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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.11.2020, 10:28   #6  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,658 / 1162 (42) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Как правило, для обслуживающих (сервисных) функций Axapta класс инициализируется только для того, чтобы проверить наличие или отсутствие неких методов или свойств самого класса. Поэтому значение переменных внутри класса в этих случаях не требуется. Вот какие-нибудь "заглушки" там и сделайте на этот случай

Т.е. прямо в методе new() сделайте код обхода, чтобы класс все-таки был инициализирован. Пусть и с явно "кривыми" данными. А "кривизну" проверяйте уже в рабочих методах. Ну, или просто перенесите инициализацию тех объектов, которые создаются в методе new() в первый исполняемый метод класса, чтобы в new() ничего не было

Если же в метод new() у класса передаются какие-то параметры, то можно опираться на тот факт, что в обслуживающих функциях эти параметры никогда не передаются при инициализации класса. Соответственно, делать обход по факту отсутствия переданных параметров

PS: кто там настаивал, что перекрывать метод new() вообще и передавать в него параметры в частности - это хорошо?

Цитата:
Причем this.get_DataSourceName() возвращает CustTable, все должно быть корректно.
но dataSource равен null.

Подскажите почему он равен null ?
Это надо смотреть, а есть ли в запросе, который сформирован в методе _axd.getQuery() источник данных с именем, который возвращает this.get_DataSourceName(). Вполне возможно, что предполагается наличие наследников у основного класса и у этих наследников данные методы перекрыты

В общем, в данном конкретном случае Вы "слишком глубоко копаете". Не надо дальше самого класса CustDocument_CustTable пытаться что-то подправить. Вам надо или обойти инициализацию в самом методе new(), если есть параметры, или перенести весь код из new() в другой метод
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
dynamicsaxse: May-June 2017 release – Dynamics AX 2012 R3 Blog bot DAX Blogs 0 21.06.2017 00:12
emeadaxsupport: Documentation collection: Inplace upgrade MS Dynamcis AX 2012 RTM --> AX 2012 R2 CU7 Blog bot DAX Blogs 0 22.06.2014 01:19
axsa: MDM Adapter - Extending Dynamics AX 2012 R3 Master Data Management Blog bot DAX Blogs 0 22.05.2014 03:28
axinthefield: Compatibility Testing for Microsoft Dynamics AX Blog bot DAX Blogs 0 23.06.2012 02:26
xplusplus: Dynamics AX Application Object Tree (AOT) Blog bot DAX Blogs 0 25.11.2010 18:11

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

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

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