AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.07.2016, 20:25   #1  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Angry QueryService
AX 2012 R2
Делаю простой пример использования QueryService типа такого:
https://community.dynamics.com/ax/b/...-query-service

Если использую простой одноуровневый Query из одной таблицы (например AssetBarcode), то все работает.

Но любая попытка вызвать Query посложнее (типа CustTable) натыкается на ошибку:
Цитата:
[Microsoft.Dynamics.AX.Framework.Services.Metadata.Contracts.EdtRelationshipMetadata]' was thrown.
при выполнении кода
X++:
dataSet = _QueryClient.ExecuteStaticQuery("CustTable", ref paging);
Как с этим бороться?
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Старый 13.07.2016, 00:04   #2  
axm2013
Гость
 
n/a
Судя по примеру из микрософт
https://technet.microsoft.com/en-us/.../gg843447.aspx
все должно работать.
Судя по ошибке
что то на стороне аксапты либо настроек

http://dynamicsuser.net/ax/f/11/t/76259

может попробовать стандартные шаги
(
1. Sync the data dictonary.

2. Generated incremental & Full CIL(Removed the files from Xppil folder).
...
)?
Старый 13.07.2016, 09:07   #3  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от AlGol Посмотреть сообщение
любая попытка вызвать Query посложнее (типа CustTable) натыкается на ошибку:
Цитата:
[Microsoft.Dynamics.AX.Framework.Services.Metadata.Contracts.EdtRelationshipMetadata]' was thrown.
Как с этим бороться?
Кастомизировался ли Query или что-либо к нему относящееся, CustTable, CustTrans и т.п.?
За это сообщение автора поблагодарили: AlGol (2).
Старый 13.07.2016, 10:24   #4  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Кастомизировался ли Query или что-либо к нему относящееся, CustTable, CustTrans и т.п.?
\Queries\CustTable не кастомизировался, выше слоя sys никаких изменений нет.

Таблицы которые в нем опрашиваются изменялись (В Custtable понапихано дополнительных полей).

Попробовал найти не кастомизированный неодноуровневый запрос из некастомизированных таблиц. Нашел запрос \Queries\AxdUnit.
С ним все работает корректно.

Похоже, что дело действительно в каких-то изменениях таблиц, которые QueryService не переваривает...
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Старый 13.07.2016, 10:28   #5  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Цитата:
Сообщение от axm2013 Посмотреть сообщение
Судя по ошибке
что то на стороне аксапты либо настроек

http://dynamicsuser.net/ax/f/11/t/76259

может попробовать стандартные шаги
(
1. Sync the data dictonary.

2. Generated incremental & Full CIL(Removed the files from Xppil folder).
...
)?
Судя по ссылке, стандартные шаги не помогли.
Зато в последнем сообщении как-то невнятно объясняет что что-то не так с полями таблиц и их типами.
Цитата:
this table which one field are found there is no EDT Relation to another table
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Старый 13.07.2016, 10:42   #6  
axm2013
Гость
 
n/a
Цитата:
Сообщение от AlGol Посмотреть сообщение
Судя по ссылке, стандартные шаги не помогли.
Зато в последнем сообщении как-то невнятно объясняет что что-то не так с полями таблиц и их типами.
По ссылке была проблема на одном query по сути.

А у вас проблему воспроизводит " любая попытка вызвать Query посложнее".
Старый 13.07.2016, 13:20   #7  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от AlGol Посмотреть сообщение
Таблицы которые в нем опрашиваются изменялись (В Custtable понапихано дополнительных полей). Попробовал найти не кастомизированный неодноуровневый запрос из некастомизированных таблиц. Нашел запрос \Queries\AxdUnit. С ним все работает корректно.
Похоже, что дело действительно в каких-то изменениях таблиц, которые QueryService не переваривает...
Дело может быть вот в чем: AIF использует тяжеловесные схемы XML-документов для валидации входящих запросов, схемы эти он кэширует в таблице AifSchemaStore и, самое подлое, никак не обновляет их в случае кастомизации объектов приложения, в отличие от WSDL-описаний сервисов. Я на проблемы именно с Query не наталкивался, но с сервисами AIF пришлось помучиться, когда, к примеру, длину поля в таблице увеличили, а AIF упорно ругался на якобы слишком длинные значения в запросах, ссылаясь на старую длину поля. В моем случае всё вылечилось после удаления закэшированной схемы документа из AifSchemaStore. Понятное дело, никакие там синхронизации словаря данных и перестройка CIL при этом не помогали.
Старый 13.07.2016, 15:43   #8  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
е всё вылечилось после удаления закэшированной схемы документа из AifSchemaStore.
Не, не помогло. Почистил AifSchemaStore, но реакция такая же.
Кстати, при выполнении корректных запросов через QueryService, в него ничего не сохраняется.
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Теги
aif, ax2012r2, queryservice

 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:20.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.