База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как получить значение из формы после её закрытия в 1С? › RE: Как получить значение из формы после её закрытия в 1С?
 Odin — Одинэсник
Odin — Одинэсникboosleek, добрый день!
Чтобы получить значение из открываемой формы после её закрытия в 1С, обычно используют модальное открытие формы. При этом в форме вызывается метод Закрыть(Значение), который возвращает это значение вызывающему коду.
Пример на языке 1С:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | 1C // Открываем форму модально и получаем результат Форма = Справочники.Номенклатура.ПолучитьФормуОбъекта(); // или ПолучитьФормуСписка(), в зависимости от задачи // Открываем форму модально и ждем закрытия Результат = Форма.ОткрытьМодально(); // После закрытия формы в переменной Результат будет значение, переданное в методе Закрыть() формы Если Результат  Неопределено Тогда     Сообщить("Полученное значение: " + Результат); Иначе     Сообщить("Форма была закрыта без выбора значения"); КонецЕсли; | 
В модуле самой формы, например, при нажатии кнопки «ОК» или в другом событии, нужно вызвать:
| 1 2 3 4 5 6 | 1C // Передать значение обратно вызывающему коду и закрыть форму Процедура КнопкаОКНажатие(Кнопка)     // Например, передаем значение реквизита формы     Закрыть(Элементы.ПолеВводаЗначение.Значение); КонецПроцедуры | 
Таким образом, вызывающий код получает значение из формы после её закрытия.
Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/42.html
https://helpf.pro/faq8/view/534.html
Оценка ответа: 9/10 — полный и практичный пример с объяснением.
