02.05.2018, 15:48 | #1 |
Участник
|
Как отфильтровать лукап
Есть лукап по работникам. В стандарте они подвязаны через reference group , в моем случае, нужно, чтобы поведение было как по referenceGroup , но без нее То есть, сохраняем RecID, но пользователь видит и выбирает Имя-фамилию.(тк при открытии формы размер буфера привышает лимит из-за скрыто привязываемых черезе reference group датасоурсов, то приходится вот так изощряться)
1) Сам лукап создаю через через X++: formRun = FormAutoLookupFactory::buildLookupFromCustomForm(stringControl, HcmWorkerLookup, AbsoluteFieldBinding::construct(fieldStr(DirPerson, Name), tableStr(DirPerson)), args);; 2) А в run формы HcmWorkerLookUp, если она вызвана по конкретному моему условию, то указываю вернуть : X++: this.selectMode(dirPerson_Name); Все здорово. Работает. Но....не могу заставить лукап фильтровать по символам подстановки. То есть, если пишу в контроле NameABC*, то открывающийся лукап по нему не фильтруется. Через какой метод можно передать это? Могу только предположить, что dirPerson на hcmWorker подвязывается через суррогатный ключ, поэтому это стрытый outer join , поэтому фильтр не срабатывает... , но как-то стандартный referece-group лукап же это делает...... То есть, если в employee responsible на vendTable вбить NameABC*, то выпадающий лукап отфильтруется же Последний раз редактировалось kitty; 02.05.2018 в 15:52. |
|
03.05.2018, 09:12 | #2 |
Участник
|
Вот тут https://community.dynamics.com/ax/f/33/t/144486 пишут, что работает если в args положить lookupRecord предварительно найденный по текущему значению.
Возможно получится и со свойствами lookupField, LookupValue http://www.axaptapedia.com/Args_Class#lookupValue |
|
03.05.2018, 15:04 | #3 |
Участник
|
Спасибо, но lookupRecord устанавливает курсор на конкретной, переданной ему записи, а не по шаблону типа ABC*
|
|
04.05.2018, 08:11 | #4 |
Злыдни
|
Я с написанием собственного кода не в ладах (системный аналитик - консультант, якобы), но для лукапов с поиском и фильтрацией прошу всегда рисовать форму для лукапа и, в новом расширенном типе или в поле другой формы для "старых" EDT, ссылаться на эту форму.
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. Последний раз редактировалось KiselevSA; 04.05.2018 в 08:12. Причина: Очепятки |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Не отрабатывает лукап | 2 | |||
как переопределить Relation чтобы лукап работал? | 10 | |||
Как сделать хитрый лукап | 11 | |||
лукап-форма с доп. фильтром | 10 | |||
Лукап, содержащий поля нескольких таблиц | 4 |
|