я так понял, что эти поля с источником данных не связаны. Соответственно на источнике данных перекрыть не получится.
Перекрываем на контроле, и в нем вызываем метод на уровне формы, в котором пишем что-то типа:
X++:
void callLookupOnControl(FormStringControl _callingControl)
switch (BaseEnumField.selection())
{
case BaseEnumFieldEnum::One:
ItemGroup::lookupCtrlBaseEnumOne(_callingControl);
break;
.....
}
То есть весь код лукапов будет на таблице - тут же будет только выбор. А лукап методы на таблице возможно пригодяться еще где-то.