Цитата:
Сообщение от
kitty
Не надо делать расширение метода контрола, а предлагается перегрузить его в расширении формы.
Перегрузить нужный вам метод у контрола с помощью registerOverrideMethod указав ваш метод который будет вызываться, вместо стандартного.
X++:
ExtensionOf(formStr(CustTable))]
final class TutorialCustTable_Form_Extension
{
public void init()
{
next init();
Posting_CustGroup.registerOverrideMethod(methodStr(FormDataObject, lookup), formMethodStr(CustTable, overridenCustGroupLookup));
}
public void overridenCustGroupLookup(FormStringControl _formControl)
{
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(CustGroup), _formControl);
// Add the lookup columns
sysTableLookup.addLookupfield(fieldNum(CustGroup, CustGroup));
sysTableLookup.addLookupfield(fieldNum(CustGroup, Name));
sysTableLookup.addLookupfield(fieldNum(CustGroup, PaymTermId));
// Run the lookup
sysTableLookup.performFormLookup();
}
}