![]() |
![]() |
![]() |
|
Передача параметра и возврат | ☑ | ||
---|---|---|---|---|
0
vel1c
17.05.13
✎
13:02
|
Привет. 8.2 управляемые формы.
Я нуб. Не пинайте. В модуле форме списка справочника номенклатура открываю общую форму модально с передачей параметра. парам1 = новый структура("Ключ1",знач1); формавыб = получитьформу("ОбщаяФорма.ВыборНоменклатурыПоШтрихкоду",парам1,этаформа); Формавыб.Штрихкод = Штрихкод; Формавыб.ВладелецФормы = ЭтаФорма; Формавыб.ОткрытьМодально(); В общей форме создаю параметр с именем "ключ1". делаю ключевым чтобы срок жизни был не только в процедуре ПриСозданииНаСервере(). Он там ловится, все ок. Потом я его меняю в других процедурах, тож все нормально. А дальше вот незнаю: КАК ВЕРНУТЬ его обратно в форму списка при закрытии общей формы? Коряво конечно написал вопрос, но я стараюсь. |
|||
1
Cube
17.05.13
✎
13:05
|
СП украли?
УправляемаяФорма (ManagedForm) ОткрытьМодально (DoModal) Возвращаемое значение: Тип: Произвольный. Команда закрытия формы. Если форма открывалась для выбора, возвращает выбранное значение (или массив значений, в случае разрешенного множественного выделения в открываемой форме). Если значение не выбрано, возвращается Неопределено. УправляемаяФорма (ManagedForm) Закрыть (Close) Синтаксис: Закрыть(<ПараметрЗакрытия>) Параметры: <ПараметрЗакрытия> (необязательный) Тип: Произвольный. Параметр закрытия формы, открытой в модальном режиме. Это значение будет возвращено как результат метода, открывающего форму модально. Значение по умолчанию: Неопределено Описание: Закрывает форму. Если закрываемая форма была открыта в модальном режиме, то метод может передать команду закрытия методу, открывшему форму. |
|||
2
vel1c
17.05.13
✎
13:15
|
спасибо за ответ.
Форма используется не для выбора. Я это читал. А можно пример для моего случая. Или если не трудно объясните пожалуйста :где выполняется команда закрытия? в общей форме?. и на какое событие её вешать? Призакрытии? Просто я на примере лучше пойму. |
|||
3
vel1c
17.05.13
✎
13:35
|
все на обеде )
апну штоле |
|||
4
hhhh
17.05.13
✎
13:44
|
(3) в любом месте можете. Ставите
Закрыть(<ПараметрЗакрытия>) как в (1) написано. Хоть даже в при открытии. |
|||
5
vvp91
17.05.13
✎
13:49
|
>>> (4), (2)
ответ не верный. >>> (0) делаю ключевым чтобы срок жизни т.е. делаешь постоянный параметр формы с названием "Ключ1" на вкладке Параметры конструктора формы? Тогда так: парам1 = новый структура("Ключ1",знач1); формавыб = получитьформу("ОбщаяФорма.ВыборНоменклатурыПоШтрихкоду",парам1,этаформа); Формавыб.Штрихкод = Штрихкод; Формавыб.ВладелецФормы = ЭтаФорма; Формавыб.ОткрытьМодально(); Сообщить(Строка(Формавыб.ключ1)); // параметр живет, пока живет форма, и доступен извне. |
|||
6
vel1c
17.05.13
✎
14:13
|
(5) он мне говорит
{Справочник.Номенклатура.Форма.ФормаСписка.Форма(374)}: Поле объекта не обнаружено (ключ1) Сообщить(Строка(Формавыб.ключ1)); |
|||
7
vvp91
17.05.13
✎
14:17
|
>>> (6)
упс! надо так: Сообщить(Строка(Формавыб.Параметры.ключ1)); еще можно сделать реквизит формы и устанавливать его. тогда обращение будет как в (5). |
|||
8
vel1c
17.05.13
✎
14:31
|
Извиняюсь, не было возможности ответить.
vvp91 СПАСИБО ВАМ БОЛЬШОЕ. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |