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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.03.2026, 18:36   #17  
Maximin is offline
Maximin
NavAx
NavAx Club
 
417 / 366 (13) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Я тут немного поковырял свой обход с невыборкой полей таблицы-предка в orig() таблицы - потомка и сделал проще.
Перечислять поля и писать методы - это долго.
Проще скопировать значения недостающих полей (на примере договоров с клиентами):
Мне нужно было его получить правильный orig() в методе таблицы SalesAgreementHeaderExt_RU.update():
X++:
    AgreementHeaderExt_RU      baseOrig =  this as AgreementHeaderExt_RU;
    SalesAgreementHeaderExt_RU this_orig = this.orig();

    baseOrig = baseOrig.orig();
    buf2Buf(baseOrig, this_orig);
В результате в переменной this_orig типа SalesAgreementHeaderExt_RU имеем все поля с правильными значениями.
Если уровней наследования будет больше - buf2buf нужно сделать несколько раз.
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...
За это сообщение автора поблагодарили: Logger (5).
Теги
inheritance, isfielddataretrieved, orig, table inheritance, type cast

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
[AX2012] Наследование таблиц. iCloud DAX: Программирование 4 26.03.2014 15:28
AX2012 - изменение связи таблиц на форме DTD DAX: Программирование 4 10.12.2013 16:30
Как сравнить financials dimensions у двух таблиц (AX2012) ? DTD DAX: Программирование 0 17.07.2013 15:16
AX2012: drag'n'drop и поля таблиц wojzeh DAX: Программирование 2 18.01.2012 22:07
приведение типов в select simply2double DAX: Программирование 3 30.09.2004 11:24

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

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

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