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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.09.2018, 16:37   #1  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Тут может быть проблема в том, что Common ведет себя иногда как ссылочный тип, иногда как значение.
Старый 25.09.2018, 16:55   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,984 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от belugin Посмотреть сообщение
Тут может быть проблема в том, что Common ведет себя иногда как ссылочный тип, иногда как значение.
Похоже, что табличный тип это не совсем тип, а некий интерфейс.
И получается в иерархии DirPartyTable ... CompanyInfo у нас есть набор интерфейсов по работе с ядреным курсором.

При этом реализация DirPartyTable.orig() и CompanyInfo.orig() разная. Каждый знает только про свой набор полей - про тот набор, который мы в AOT для таблички описали. И именно этот набор полей при вызове и заполняет в возвращаемом буфере.

Соответственно, задача стояла как получить доступ к соответствующему интерфейсу курсора. Если в коде объявлена переменная соответствующего типа, то все просто, а если ее нет, то как ее получить в runTime.
Ну, я нашел способ.

P.S.
Кстати, аналогичная проблема возникает при помещении и извлечении буфера в List (см. http://sashanazarov.blogspot.com/201...n-objects.html)

а также при помещении и извлечении в контейнер таким способом, популярным в предыдущих версиях:
X++:
con = [buffer];
buffer = conPeek(con, 1);
там тоже при использовании наследуемых табличек теряется инфа о других полях (не из текущего типа).

Видимо, во всех этих случаях задействован какой-то общий механизм в ядре.
Теги
inheritance, 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, время: 19:43.