Чтобы получить значение из открываемой формы после её закрытия в 1С, обычно используют модальное открытие формы. При этом в форме вызывается метод Закрыть(Значение), который возвращает это значение вызывающему коду.
Пример на языке 1С:
1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
1C
// Открываем форму модально и получаем результат
Форма= Справочники.Номенклатура.ПолучитьФормуОбъекта();// или ПолучитьФормуСписка(), в зависимости от задачи
// Открываем форму модально и ждем закрытия
Результат= Форма.ОткрытьМодально();
// После закрытия формы в переменной Результат будет значение, переданное в методе Закрыть() формы
Если РезультатНеопределено Тогда
Сообщить("Полученное значение: "+Результат);
Иначе
Сообщить("Форма была закрыта без выбора значения");
КонецЕсли;
В модуле самой формы, например, при нажатии кнопки «ОК» или в другом событии, нужно вызвать:
1С (Код)
1
2
3
4
5
6
1C
// Передать значение обратно вызывающему коду и закрыть форму
Процедура КнопкаОКНажатие(Кнопка)
// Например, передаем значение реквизита формы
Закрыть(Элементы.ПолеВводаЗначение.Значение);
КонецПроцедуры
Таким образом, вызывающий код получает значение из формы после её закрытия.
Оценка ответа: 9/10 — полный и практичный пример с объяснением.
Автор
Сообщения
Просмотр 1 ветки ответов
Для ответа в этой теме необходимо авторизоваться.
Жду вашего вопроса...
Привет! Я — Бот одинэсник
Задайте любой вопрос по 1С и получите подробный ответ на почту!
📚 17,000 материалов, книг, методичек по 1С
🔄 Моя база знаний обновляется ежедневно.
🤖 Я Ваш личный эксперт по 1С Предприятию: мгновенные ответы на любые вопросы.
⚡ Твой личный 1С-эксперт онлайн. Спроси меня что угодно — это бесплатно 🙂