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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.12.2019, 12:48   #11  
Libovs is offline
Libovs
Участник
 
224 / 53 (2) ++++
Регистрация: 26.03.2018
Цитата:
Сообщение от belugin Посмотреть сообщение
Имя источника данных типа table records. Непосредственно в языке формул нельзя обращаться к таблицам, только создавая источники данных. Имя источника данных можно сделать любым, в том числе и совпадающим с именем таблицы.
Вот смотрю я на модель ОС от официального поставщика. В источниках данных определены три таблицы – AssetTable, AssetTaxDepr_LV типа записи таблицы и CompanyInfo типа таблица. Таблица AssetBook как источник данных не описана, соответственно ER-имени (внутреннего алиаса) у этой таблицы нет.
Нажмите на изображение для увеличения
Название: FA4.jpg
Просмотров: 277
Размер:	112.7 Кб
ID:	12504
Теперь смотрю на маппинг модели. В нем 3 корневых элемента, где Fixed asset сопоставлен с источником данных AssetTable.
Нажмите на изображение для увеличения
Название: FA5.jpg
Просмотров: 229
Размер:	86.8 Кб
ID:	12505
В этот корневой элемент добавлено поле $Books вычисляемое по формуле
Нажмите на изображение для увеличения
Название: FA6.jpg
Просмотров: 258
Размер:	115.1 Кб
ID:	12506
$Books:Вычисляемое поле =
IF(ISEMPTY(AssetTable.'<Relations'.'AssetBook.AssetTable_AssertId'), EMPTYLIST(AssetTable.'<Relations'.'AssetBook.AssetTable_AssertId'), AssetTable.'<Relations'.'AssetBook.AssetTable_AssertId')
В этой формуле используется имя AssetBook, которое не является ER-именем источника данных, а системным именем таблицы. Это предположение я делаю исходя из того, что (см. выше) источник данных с таким именем не описывался и в выражении AssetTable используется без кавычек (ER-имя), а AssetBook взято в кавычки.
И эта модель с такой формулой работает, на ней построено десятка два форматов.
Для «чистоты эксперимента» выгрузил модель с маппингом в xml-файл и поиском проверил, что строка ‘AssetBook’ нигде, кроме этого выражения не встречается.

И я возвращаюсь опять к вопросу: может ли в формуле использоваться системное имя таблицы? Почему возникает ошибка валидации при сохранении абсолютно идентичной формулы для таблицы LedgerJournalTrans_Asset
$LedgerJournalTrans_Asset:Вычисляемое поле = IF(ISEMPTY(AssetTable.'<Relations'.'LedgerJournalTrans_Asset.AssetTable_AssertId'), EMPTYLIST(AssetTable.'<Relations'.'LedgerJournalTrans_Asset.AssetTable_AssertId'), AssetTable.'<Relations'.'LedgerJournalTrans_Asset.AssetTable_AssertId')

Предположение о том, что правила написания формул в модели и формате разные, мне кажется невероятным. Более вероятным может быть, что методы валидации для форм конструктора модели и формата реализованы разным кодом (в разных классах), но тогда в одном из них ошибка?

Или я все-таки чего-то не понимаю или неверно трактую? Что неправильно в моих рассуждениях и/или выводах?

Последний раз редактировалось Libovs; 05.12.2019 в 13:01.
Теги
generic electronic reporting, ger

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
ievgensaxblog: MSDyn365FO. How to Import CSV file using Electronic Reporting. Part 2 – Format. Blog bot DAX Blogs 0 06.02.2019 07:12
ievgensaxblog: MSDyn365FO. How to Import CSV file using Electronic Reporting. Part 1 – Data Model. Blog bot DAX Blogs 0 06.02.2019 07:12
erconsult: Electronic Reporting (ER) Cookbook 2: new tips from the kitchen Blog bot DAX Blogs 0 06.08.2018 17:11
powerobjects: Electronic Reporting in Dynamics 365 for Finance and Operations Blog bot DAX Blogs 0 14.02.2018 03:28
erconsult: Electronic Reporting (ER) Cookbook Blog bot DAX Blogs 24 09.10.2017 08:47

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 06:10.