1С: Открыть форму и получить результат работы
Задача: из формы документа открыть форму подбора чего-либо, и по результату получить результат в исходную форму.
Ну собственно задача штатная и обыденная, никаких изобретений тут нет. Оставляю, т.к. не часто этим пользуюсь и забывается
Решение:
В исходной форме вызываем новую форму:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
&НаКлиенте Процедура ПодборФИАС(Команда) Оповещение = Новый ОписаниеОповещения("ПолучитьФИАСДомаИзФормыПодбора", ЭтотОбъект); ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("Ключ", объект.Ссылка); ОткрытьФорму("Справочник.УКАУКАУК.Форма.ФормаПодбораФИАС", ПараметрыФормы,ЭтаФорма,,,,Оповещение,РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс); КонецПроцедуры &НаКлиенте Функция ПолучитьФИАСДомаИзФормыПодбора(Результат, ДополнительныеПараметры) экспорт нс=объект.Дома.Добавить(); нс.ИдДома="-"; нс.КодФиас=Результат.ВыбранныйФиас; КонецФункции |
В открываемой форме, пропишем обработку закрытия формы:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
&НаКлиенте Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Фиас=""; для каждого стр из Элементы.Дом.СписокВыбора цикл если стр.Представление=Элементы.Дом.ВыделенныйТекст тогда Фиас=стр.Значение; конецЕсли; конеццикла; ПараметрыЗакрытия = Новый Структура; ПараметрыЗакрытия.Вставить("ВыбранныйФиас", Фиас); Закрыть(ПараметрыЗакрытия); КонецПроцедуры |

