27.12.2016, 16:05 | #1 |
Участник
|
ax7. а кто, как и когда должен обновлять поля в Stage-таблице и в DataEntity?
ax7
Ткните меня носом, пожалуйста, в методику добавления полей к таблицам, для которых есть dataEntity. Для примера возьмем тривиальную таблицу BankAccountTable для этой таблицы есть DataEntity: BankAccountEntity эта DataEntity использует Stage-таблицу: BankAccountStaging Предположим, мне нужно добавить поле в таблицу BankAccountTable а кто, как и когда должен обновлять поля в Stage-таблице и в DataEntity? |
|
27.12.2016, 17:27 | #2 |
Участник
|
Вроде бы немного есть вот тут:
https://www.youtube.com/watch?v=jdp56ZdbX80 Правда там докладчик немного сам запутался. |
|
|
За это сообщение автора поблагодарили: mazzy (2), iCloud (2). |
27.12.2016, 17:54 | #3 |
Участник
|
спасибо, посмотрю. интересный канал, подписался.
мне подсказали путь: если в исходной таблице было добавлено поле, то 1. добавить mapping-поле во все data entity 2. правой кнопкой мыши на data entity и нажать на Update Staging Table на каждой затронутой data entity в принципе, понятно. Но это означает, что разработчик должен следить за соответствием полей в таблице и во всех dataEntity... а ручная работа всегда чревата ошибками. кроме того, в системе контроля версий, разработчик должен будет засабмитить и все затронутые dataEntity, и все затронутые stage-таблицы... я то надеялся на какое-то автоматизированное средство контроля. типа автополей в query... надо подумать. |
|
27.12.2016, 19:05 | #4 |
NavAx
|
Интереснее, если поля добавляются в Extension-ы, как в этом случае быть.
|
|
|
За это сообщение автора поблагодарили: mazzy (2). |
27.12.2016, 23:06 | #5 |
Участник
|
Цитата:
Сообщение от Raven Melancholic
Вроде бы немного есть вот тут:
https://www.youtube.com/watch?v=jdp56ZdbX80 Правда там докладчик немного сам запутался. на 30 минуте слушатель грамотно задает вопрос. в вопросе намного больше 50% ответа. |
|
28.12.2016, 20:25 | #6 |
Модератор
|
Extend-ить data entity (извините за англицизмы) ?
__________________
-ТСЯ или -ТЬСЯ ? |
|
28.12.2016, 21:15 | #7 |
NavAx
|
Это понятно, но почему-то новое поле не получилось замапить. Причем, у себя на VM после добавления поля на таблицах (основной и stage) и в entity, в Import-е смог замапить, а вот на другой VM - нет, ругалось, что поле не enabled.
|
|
29.12.2016, 12:22 | #8 |
Участник
|
А у меня получилось добавить, но поле в entity имеет засеренное свойство Save contents = No и в экселе не появляется. Короче как-то работать должно.
|
|
29.12.2016, 23:53 | #9 |
Участник
|
Mazzy, Entity - это же все таки твой публичный интерфейс для работы с данными. Соответственно поля там могут называться совершенно по-другому, чем в таблице. Entity может быть основана на нескольких таблицах, или даже View.
Поэтому было бы нелогичным авто-генерировать поле в таблице. Для создания - есть Data Entity Wizard. А вот что Staging таблицы надо вручную вызывать обновление - это да, не очень удобно. |
|
30.12.2016, 09:56 | #10 |
Модератор
|
У "крупных" сущностей далеко не все поля из включенных таблиц выставлены наружу, хотя бы потому что просто добавить поле в общем случае недостаточно (ровно как и добавить parm метод в AIF в прошлых версиях). Надо протягивать инициализацию из связанных таблиц, где-то учиться разбирать ситуации "поле обновлено \ не обновлено \ обновлено пустым значением", запускать дополнительную бизнес-логику и валидации и т.д. Если уж делать, то делать правильно, и одними полями не отделаетесь
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
30.12.2016, 10:48 | #11 |
Участник
|
Да, "могут".
Да, "не все". я просто не очень понимаю почему нет режима авто. как в query. Цитата:
хочется, чтобы было два варианта - авто и ручное обновление. как в query. |
|
30.12.2016, 14:14 | #12 |
Модератор
|
Я уже вроде написал выше - в Query все относительно просто потому что он реализует только чтение. А для data entity тебе надо реализовать изменение так, чтобы результаты согласовались с поведением при изменении в UI, во всех комбинациях включения\выключения конфигурационных ключей, параметров модулей, стран и т.д. Это - код, много кода, и никакого режима "авто" здесь быть не может по определению
__________________
-ТСЯ или -ТЬСЯ ? |
|
30.12.2016, 14:52 | #13 |
Участник
|
|
|
Теги |
data entity, методика, ax7 |
|
|