База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как получить значение из формы после её закрытия в 1С? › RE: Как получить значение из формы после её закрытия в 1С?
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 — полный и практичный пример с объяснением.