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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.12.2016, 16:05   #1  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,355 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
ax7. а кто, как и когда должен обновлять поля в Stage-таблице и в DataEntity?
ax7

Ткните меня носом, пожалуйста, в методику добавления полей к таблицам,
для которых есть dataEntity.

Для примера возьмем тривиальную таблицу BankAccountTable
для этой таблицы есть DataEntity: BankAccountEntity
эта DataEntity использует Stage-таблицу: BankAccountStaging

Предположим, мне нужно добавить поле в таблицу BankAccountTable
а кто, как и когда должен обновлять поля в Stage-таблице и в DataEntity?
Старый 27.12.2016, 17:27   #2  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
 
1,677 / 830 (31) +++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Вроде бы немного есть вот тут:
https://www.youtube.com/watch?v=jdp56ZdbX80
Правда там докладчик немного сам запутался.
За это сообщение автора поблагодарили: mazzy (2), iCloud (2).
Старый 27.12.2016, 17:54   #3  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,355 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
спасибо, посмотрю. интересный канал, подписался.

мне подсказали путь:

если в исходной таблице было добавлено поле,
то
1. добавить mapping-поле во все data entity
2. правой кнопкой мыши на data entity и нажать на Update Staging Table на каждой затронутой data entity

в принципе, понятно.
Но это означает, что разработчик должен следить за соответствием полей в таблице и во всех dataEntity... а ручная работа всегда чревата ошибками.

кроме того, в системе контроля версий,
разработчик должен будет засабмитить и все затронутые dataEntity, и все затронутые stage-таблицы...

я то надеялся на какое-то автоматизированное средство контроля.
типа автополей в query...

надо подумать.
Изображения
  
Старый 27.12.2016, 19:05   #4  
raz is offline
raz
NavAx
Аватар для raz
Лучший по профессии 2014
Лучший по профессии 2009
NavAx Club
 
1,310 / 760 (28) +++++++
Регистрация: 22.07.2003
Адрес: МО
Интереснее, если поля добавляются в Extension-ы, как в этом случае быть.
За это сообщение автора поблагодарили: mazzy (2).
Старый 27.12.2016, 23:06   #5  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,355 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Цитата:
Сообщение от Raven Melancholic Посмотреть сообщение
Вроде бы немного есть вот тут:
https://www.youtube.com/watch?v=jdp56ZdbX80
Правда там докладчик немного сам запутался.
мдя... немного, это правда.

на 30 минуте слушатель грамотно задает вопрос.
в вопросе намного больше 50% ответа.
Старый 28.12.2016, 20:25   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
 
3,275 / 1274 (49) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от raz Посмотреть сообщение
Интереснее, если поля добавляются в Extension-ы, как в этом случае быть
Extend-ить data entity (извините за англицизмы) ?
__________________
-ТСЯ или -ТЬСЯ ?
Старый 28.12.2016, 21:15   #7  
raz is offline
raz
NavAx
Аватар для raz
Лучший по профессии 2014
Лучший по профессии 2009
NavAx Club
 
1,310 / 760 (28) +++++++
Регистрация: 22.07.2003
Адрес: МО
Цитата:
Сообщение от Vadik Посмотреть сообщение
Extend-ить data entity (извините за англицизмы) ?
Это понятно, но почему-то новое поле не получилось замапить. Причем, у себя на VM после добавления поля на таблицах (основной и stage) и в entity, в Import-е смог замапить, а вот на другой VM - нет, ругалось, что поле не enabled.
Старый 29.12.2016, 12:22   #8  
imir is offline
imir
Участник
 
112 / 90 (4) ++++
Регистрация: 28.05.2010
А у меня получилось добавить, но поле в entity имеет засеренное свойство Save contents = No и в экселе не появляется. Короче как-то работать должно.
Старый 29.12.2016, 23:53   #9  
kashperuk is offline
kashperuk
Senior SDE, Dynamics AX
Аватар для kashperuk
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
 
4,286 / 1948 (73) ++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Mazzy, Entity - это же все таки твой публичный интерфейс для работы с данными. Соответственно поля там могут называться совершенно по-другому, чем в таблице. Entity может быть основана на нескольких таблицах, или даже View.
Поэтому было бы нелогичным авто-генерировать поле в таблице.
Для создания - есть Data Entity Wizard.

А вот что Staging таблицы надо вручную вызывать обновление - это да, не очень удобно.
Старый 30.12.2016, 09:56   #10  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
 
3,275 / 1274 (49) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от kashperuk Посмотреть сообщение
А вот что Staging таблицы надо вручную вызывать обновление - это да, не очень удобно
У "крупных" сущностей далеко не все поля из включенных таблиц выставлены наружу, хотя бы потому что просто добавить поле в общем случае недостаточно (ровно как и добавить parm метод в AIF в прошлых версиях). Надо протягивать инициализацию из связанных таблиц, где-то учиться разбирать ситуации "поле обновлено \ не обновлено \ обновлено пустым значением", запускать дополнительную бизнес-логику и валидации и т.д. Если уж делать, то делать правильно, и одними полями не отделаетесь
__________________
-ТСЯ или -ТЬСЯ ?
За это сообщение автора поблагодарили: mazzy (2).
Старый 30.12.2016, 10:48   #11  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,355 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Цитата:
Сообщение от kashperuk Посмотреть сообщение
...поля там могут....
Цитата:
Сообщение от Vadik Посмотреть сообщение
...далеко не все поля из включенных таблиц выставлены наружу...
Да, "могут".
Да, "не все".

я просто не очень понимаю почему нет режима авто.
как в query.

Цитата:
Сообщение от kashperuk Посмотреть сообщение
А вот что Staging таблицы надо вручную вызывать обновление - это да, не очень удобно.
именно.
хочется, чтобы было два варианта - авто и ручное обновление. как в query.
Старый 30.12.2016, 14:14   #12  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
 
3,275 / 1274 (49) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от mazzy Посмотреть сообщение
я просто не очень понимаю почему нет режима авто. как в query
Я уже вроде написал выше - в Query все относительно просто потому что он реализует только чтение. А для data entity тебе надо реализовать изменение так, чтобы результаты согласовались с поведением при изменении в UI, во всех комбинациях включения\выключения конфигурационных ключей, параметров модулей, стран и т.д. Это - код, много кода, и никакого режима "авто" здесь быть не может по определению
__________________
-ТСЯ или -ТЬСЯ ?
Старый 30.12.2016, 14:52   #13  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,355 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
да, я согласен с тобой, что реализовать непросто.
Цитата:
Сообщение от Vadik Посмотреть сообщение
и никакого режима "авто" здесь быть не может по определению
может быть конечно.
есть же формы, которые вполне могут обновлять. и поля там могут быть автоматическими, как в query
Теги
data entity, методика, ax7

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
daxmusings: Design-Compile-Run Part4: Paradigms in AX7 Blog bot DAX Blogs 0 25.05.2016 10:11
dynamicsax-fico: Invoice search AX2012 vs. AX7 (Part 2) Blog bot DAX Blogs 0 01.04.2016 10:11
Пропавшие поля в таблице Андре DAX: Программирование 10 03.03.2016 10:32
обновление поля в заданной таблице Eldar9x DAX: Программирование 7 13.03.2009 15:32
После перекрытия JumpRef поля на DataSource в контекстном меню так и не появился переход к основной таблице. Кирилл DAX: Программирование 7 01.02.2007 11:42
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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