29.03.2007, 16:56 | #1 |
Участник
|
лукап-форма с доп. фильтром
Всем привет.
Создал лукап-форму на котором есть доп. фильтр, т.е. лукап-поля. Проблема в том, что при выборе в этих лукап-полях закрывается родительская лукап-форма. Перекрыв метод lookup, moseUp добавив параметр canSelect, добился того, что родительска лукап-форма не закрывается, но после выбора в лукапе, если уйти с родительской лукап-формы, она не закрывается. Может у кого было что-то подобное, как добиться результата, чтобы такая лукап-форма закрывалась сразу после ухода с нее, но не закрывалась выбором лукап-полей на ней. |
|
29.03.2007, 17:07 | #2 |
Участник
|
а где вы устанавливаете canSelect = true?
А вообще, ИМХО, полный изврат. Лукапформа в лукап-форме. Ну неужели нет способа сделать это как-то более "по-человечески"? Последний раз редактировалось kashperuk; 29.03.2007 в 17:10. |
|
29.03.2007, 17:09 | #3 |
Участник
|
В том-то и дело, что я не знаю где после выбора в лукап-поле установить
canSelect = true, попробовал уже много методов контрола: lostFocus, leave, mouseDown не помогает |
|
29.03.2007, 17:11 | #4 |
Участник
|
modified пробовали?
|
|
29.03.2007, 17:21 | #5 |
Участник
|
Да и modified пробовал. Фшка в том, что после выбора лукап-поля и ухода с родительской лукап-формы, close не вызывается.
А еще можно вызвать лукап-поле и не выбирать, Esc нажать или уйти еще и с этого лукапа, т.о. modified не выполнится тоже непонятно как отловить |
|
29.03.2007, 17:34 | #6 |
program-ёр
|
Была аналогичная задача: настроить возможность множественной фильтрации лукапа при заполнении поля ItemId в строках закупок и заказов
Пришлось перекрывать лукап поля ItemId на датасорсах обоих форм X++: FormRun f = classFactory.formRunClass(new Args("MyFormLookup")); Array arr = new Array(Types::Integer); ; //super(_formControl, _filterStr); arr.value(1, PurchLine.TableId); f.args().parmObject(arr); f.init(); f.run(); f.wait(); if (f.closedOk()) { inventTable = f.dataSource(1).cursor(); PurchLine.ItemId = inventTable.ItemId; }
__________________
Становись лучше Последний раз редактировалось kvg6; 29.03.2007 в 21:05. |
|
29.03.2007, 17:41 | #7 |
Участник
|
Хм, а как вы в форме MyFormLookup реализовали, что при уходе с нее она закрывается, а при вызове лукап-поля нет.
И для чего передается Array в форму. Может вы и форму выложите посмотреть, мне кажется с ней было бы понятнее. Последний раз редактировалось patron; 29.03.2007 в 17:45. |
|
29.03.2007, 17:44 | #8 |
Участник
|
Ну не хочет пользователь пользоваться фильтром в лукапе, нужно ему чтобы можно было ограничить записи по наиболее часто используемым полям в лукап-форме с помощью полей на этой же форме
|
|
29.03.2007, 18:14 | #9 |
program-ёр
|
Цитата:
X++: element.closeOk();
__________________
Становись лучше Последний раз редактировалось kvg6; 29.03.2007 в 21:11. |
|
30.03.2007, 10:55 | #10 |
Участник
|
Цитата:
Простите, может я неверно вопрос задаю. Лукап-форма характерна тем, что при уходе с нее (при щелчке мыши вне ее границ) она закрывается, не возвращая значения. Вот именно это и интересно как вы реализовали |
|
30.03.2007, 12:19 | #11 |
program-ёр
|
Просто сделайте ее обычной формой
__________________
Становись лучше |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Как сделать хитрый лукап | 11 | |||
Лукап, содержащий поля нескольких таблиц | 4 | |||
Как передать параметры из одной web форма в другую | 9 | |||
LookUp форма и параметры | 7 | |||
Произвольная Lookup форма | 0 |
|