16.09.2003, 12:58 | #1 |
Участник
|
LookUp форма и параметры
Добрый день!
Создал собственную LookUp форму, которую вызываю с помощью EDT и его свойства FormHelp. Для логики работы данной формы необходимо получить дополнительную информацию. Вопросы - Можно ли передать какие-то либо параметры в LookUp форму? или - Можно ли из LookUp формы получить доступ к объектам/свойствам/методам формы из которой LookUp форма была вызвана. PS Форма из которой вызывается LookUp форма является диалогом Переопределять методы (lookup method) для объектов диалога не умею рекомендации mazzy читал, рассматриваю как вариант Цитата:
Изначально опубликовано mazzy
Если нужно переопределить методы или сделать что либо нетривиальное - используй обычные формы вместо диалога. Это нагляднее и понятнее. ... Если уж очень хочется это сделать именно в диалоге, то разберись с семейством классов FormBuild*. Я бы не рекомендовал PHP код:
__________________
Дмитрий Гришин |
|
16.09.2003, 13:41 | #2 |
Banned
|
Цитата:
Можно ли передать какие-то либо параметры в LookUp форму?
\Forms\smmContactPerson\Designs\Design\[Group:Main]\[Tab:Tab]\[TabPage:Overview]\[Grid:Grid]\StringEdit:ContactPerson_ContactPersonParentId\Methods\lookup Цитата:
Можно ли из LookUp формы получить доступ к объектам/свойствам/методам формы из которой LookUp форма была вызвана
Вот пример того, как параметры можно обработать: \Classes\SysTableLookup\getCallerStringControl. В этом примере методу передаются аргументы из вызванной lookup-формы, а он определяет вызвавшую форму и вызвавший контрол. А вот пример lookup-формы, в которой все это реализовано: DimensionsLookup. |
|
16.09.2003, 23:08 | #3 |
Участник
|
EVGL, огромное тебе спасибо за твои толковые ответы. Я на полном серьезе.
Можно маленькую просьбу? Если это возможно, давай ссылки на документацию по тем вопросам, которые в документации описаны. Согласись тебе было бы несложно указать, что в документации на слово lookup много чего написано. Такие ссылки можно давать дополнительно к твоим содержательным ответам. Как считаешь? |
|
17.09.2003, 10:33 | #4 |
Участник
|
EVGL, спасибо!
Цитата:
Изначально опубликовано EVGL
Можно. Но для этого эту форму надо создать "ручками". Цитата:
Изначально опубликовано EVGL
Можно. Форма имеет element.args(), к которым можно обратиться, к примеру, из метода init(). Думаю, это выход в моем случае... сейчас буду пробовать... Цитата:
Изначально опубликовано EVGL
А вот пример lookup-формы, в которой все это реализовано: DimensionsLookup.
__________________
Дмитрий Гришин |
|
17.09.2003, 13:04 | #5 |
Banned
|
Цитата:
Если это возможно, давай ссылки на документацию по тем вопросам, которые в документации описаны. Согласись тебе было бы несложно указать, что в документации на слово lookup много чего написано.
В данном случае на заданный вопрос документация разработчика ответа не дает. |
|
18.09.2003, 00:43 | #6 |
Участник
|
Цитата:
Изначально опубликовано EVGL
Мне, к сожалению, сложно, так как я эту документацию раз в полгода открываю. Цитата:
Изначально опубликовано EVGL
По большому счету, проштудировать документацию - первое дело, а уж потом надо на форум идти и спрашивать. Тогда какой смысл ссылаться теперь с форума на документацию? Цитата:
Изначально опубликовано EVGL
В данном случае на заданный вопрос документация разработчика ответа не дает. Цитата:
Изначально опубликовано SnowMan
Создал собственную LookUp форму, которую вызываю с помощью EDT и его свойства FormHelp. - Можно ли передать какие-то либо параметры в LookUp форму? или - Можно ли из LookUp формы получить доступ к объектам/свойствам/методам формы из которой LookUp форма была вызвана. О args можно почитать в AOT \ System Documentation \ Classes \ Args Посмотреть примеры использования можно в руководстве разработчика по ключевому слову args. среди параметров и методов args есть caller(). Он дает ссылку на вызвавший объект. Передавать параметры можно также через этот же args. См. руководство разработчика "The lookup facility: creating you own lookup forms" Но для того, чтобы передать свои нестандартные параметры придется программировать. Лучше этого не делать. Гораздо эффективнее разобраться со стандартно-передаваемыми параметрами. Пример использования параметров в lookup-формах можно посмотреть в форме LedgerAccountLookup, AssetBookIdRangeLookup, AssetBookIdRangeLookup и т.п. |
|
18.09.2003, 10:36 | #7 |
Участник
|
Цитата:
Изначально опубликовано mazzy
Как это не дает? А так?: Все это я проделал, изучал документацию и доступный код, НО ни там ни там не нашел ответ на поставленный вопрос... поэтому я согласен с EVGL, что Цитата:
Изначально опубликовано EVGL
В данном случае на заданный вопрос документация разработчика ответа не дает. Есть стандартный диалог, в нем стандартный контрол с лукап кнопкой, созданный на основе стандартного EDT со свойсвом FormHelp, в котором указана нестандартная лукап форма... В связи с тем, что диалог стандартный, я не могу вмешаться в процесс вызова лукап формы и заполнить для нее Args... Хотел бы да не могу... Жаль... И ответа в документации не нашел... Отсюда вижу два выхода: - первый: создать свою форму вместо диалога и там менять лукап метод как мне вздумается и как описано в документации - второй: создать наскледника от класса диалог, дополнительно снабдив его требуемыми свойсвами/методами. При создании диалога заполнять эти свойства, а из лукап формы получать их значения. Я предпочел второй вариант, как менее затратный...
__________________
Дмитрий Гришин |
|
18.09.2003, 16:04 | #8 |
Участник
|
как скажете.
спасибо за ответ. |
|