![]() |
#1 |
Участник
|
d365technext: Override Lookup AX7 & D365FO
Источник: http://d365technext.blogspot.com/201...x7-d365fo.html
============== Override Lookup AX7 & D365FO Here is the small example to override lookup .. copy the lookup event handler of the field and paste the event into any class /// /// /// /// receiving value in parameter /// receiving value in parameter [FormControlEventHandler(formControlStr(PayrollEmployerTaxRegion, Overview_StateId), FormControlEventType::Lookup)] publicstaticvoid Overview_StateId_OnLookup(FormControl sender, FormControlEventArgs e) { /// write your lookup code here if control or field already have lookup to we need to cancel parent lookup execution otherwise we will get exception. below code you can use to cancel parent lookup --- FormControlCancelableSuperEventArgs ce = e asFormControlCancelableSuperEventArgs; //cancel super() to prevent error. ce.CancelSuperCall(); } Here is the complete code sample /// /// /// /// receiving value in parameter /// receiving value in parameter [FormControlEventHandler(formControlStr(PayrollEmployerTaxRegion, Overview_StateId), FormControlEventType::Lookup)] publicstaticvoid Overview_StateId_OnLookup(FormControl sender, FormControlEventArgs e) { SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(LogisticsAddressState), sender); Query query = newQuery(); // Filter lookup to only show US states query.addDataSource(tableNum(LogisticsAddressState)).addRange(fieldNum(LogisticsAddressState, CountryRegionId)).value(LogisticsAddressCountryRegion::findByISOCode(SysCountryRegionCode::countryInfo(curext())).CountryRegionId); // Sort the lookup by state Id query.dataSourceTable(tableNum(LogisticsAddressState)).addOrderByField(fieldNum(LogisticsAddressState, StateId), SortOrder::Ascending); // Add fields sysTableLookup.addLookupfield(fieldNum(LogisticsAddressState, StateId)); sysTableLookup.addLookupfield(fieldNum(LogisticsAddressState, Name)); // Run lookup sysTableLookup.parmQuery(query); sysTableLookup.performFormLookup(); FormControlCancelableSuperEventArgs ce = e asFormControlCancelableSuperEventArgs; //cancel super() to prevent error. ce.CancelSuperCall(); } Источник: http://d365technext.blogspot.com/201...x7-d365fo.html
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору. |
|
|
За это сообщение автора поблагодарили: IvanS (1). |
|
|