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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.05.2015, 07:47   #1  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Так в сигнатуре метода lookupReference() никаких параметров нет

Да и вообще, странно как-то.
Вы регистрируете метод, как принадлежащий классу, но на самом деле он находится в таблице
Или у вас в классе дублируется метод lookupReferenceAgreementClassification?
__________________
Axapta v.3.0 sp5 kr2

Последний раз редактировалось AndyD; 26.05.2015 в 07:50.
Старый 26.05.2015, 08:00   #2  
Pandasama is offline
Pandasama
Участник
 
467 / 140 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
А что, registerOverrideMethod можно делать только на метод класса?
Нет, метод lookupReferenceAgreementClassification только в таблице, поэтому, соответственно, там и tableMethodStr использую
Старый 26.05.2015, 08:13   #3  
TasmanianDevil is offline
TasmanianDevil
Мрачный тип
Аватар для TasmanianDevil
Злыдни
 
887 / 389 (14) ++++++
Регистрация: 24.01.2005
Адрес: Томск
Цитата:
Сообщение от Pandasama Посмотреть сообщение
А что, registerOverrideMethod можно делать только на метод класса?
X++:
dlgAgreementClassification.registerOverrideMethod(identifierStr(lookupReference), tableMethodStr(AgreementHeader, lookupReferenceAgreementClassification), this);
Переопределяем что, чем и и где живет это "чем".

На this (экземпляр вашего класса) нет метода lookupReferenceAgreementClassification.
Если уж так важно вызывать его именно с таблицы соглашений - переставьте переопределение метода lookupReference на метод класса и из этого метода уже и вызывайте лукапный метод, живущий на таблице.
__________________
Мы летаем, кружимся, нагоняем ужасы ...
За это сообщение автора поблагодарили: Pandasama (1).
Старый 26.05.2015, 08:02   #4  
Pandasama is offline
Pandasama
Участник
 
467 / 140 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Что касается отсутствия параметров в lookupreference

В стандартных местах, например, так:
X++:
dialogFromAccount = dialog.addFieldValue(extendedtypestr(MainAccountRecId), fromAccountRecId, "@SYS135766");
    dialogFromAccount.registerOverrideMethod(methodstr(FormReferenceControl, resolveReference), methodstr(LedgerExchAdj, mainAccountResolveReference), this);
    dialogFromAccount.registerOverrideMethod(methodstr(FormReferenceControl, lookupReference), methodstr(LedgerExchAdj, mainAccountLookupReference), this);
X++:
public Common mainAccountLookupReference(FormReferenceControl _formReferenceControl)
{
    return MainAccount::lookupReference(_formReferenceControl);
}
т.е. лукап вполне с параметром
Теги
ax2012, dialog, lookupreference, registeroverridemethod

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axtadka: Adding a field on dialog by addfield() method, when the type of EDT is known at run time, in Dynamics AX 2009 Blog bot DAX Blogs 0 17.11.2012 11:12
Malaysia: Creating a dialog Blog bot DAX Blogs 0 07.11.2012 17:11
ax-erp: How to use default dimensions as Dialog fields in dialogs [Dynamics AX 2012] Blog bot DAX Blogs 0 19.09.2012 20:11
ax-erp: How to Enable/Disable fields in a dialog Blog bot DAX Blogs 0 19.09.2012 20:11
ax-erp: How to override the event methods on dialog controls? Blog bot DAX Blogs 0 18.09.2012 18:11
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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