Локальное правило отменяет закрытие собственной формы через Отказ. СтандартнаяОбработка не отключается и не выдаётся за признак отмены.
Где и как запускать
Модуль своей обычной формы, толстый клиент. Для связанных форм место каждого дополнительного блока указано отдельно.
Подготовка
Создайте собственную внешнюю обработку с обычной формой. Запуск — толстый клиент, обычные формы; основной блок назначается указанному событию самой формы.
Реквизиты формы: Наименование (Строка 100), Количество (Число 10.0), Цена и Сумма (Число 12.2), Статус (Строка 200), КоличествоПовторныхОткрытий (Число 10.0), РазрешитьЗакрытие (Булево). Выведите нужные поля и флажок на форму.
Добавьте обычную надпись СуммаНадпись без связи с данными. Для расчётных опытов вручную задайте Количество = 3, Цена = 100, Наименование = Книга. Данные находятся только в форме.
Каждый пример — отдельный вариант формы. Не вызывайте обработчик события вручную; используйте указанное действие или дополнительную кнопку.
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
Если Не РазрешитьЗакрытие Тогда
Отказ = Истина;
Сообщить("Для закрытия учебного окна включите Разрешить закрытие");
КонецЕсли;
КонецПроцедурыРазбор по шагам
Подготавливаем свою обычную форму и назначаем её точное событие.
Платформа вызывает обработчик в описанных условиях; дополнительные блоки создают реальное действие там, где оно доступно без внешней компоненты.
Локальное правило отменяет закрытие собственной формы через Отказ. СтандартнаяОбработка не отключается и не выдаётся за признак отмены.
Как проверить результат
При выключенном флажке окно не закрывается.
Включите флажок: закрытие допускается. Опыт выполняйте только со своей учебной формой.
Ожидаемый результат
Показан конкретный контекст события обычной формы и пределы его применимости.
На что обратить внимание
Обычная и управляемая формы имеют разные сигнатуры событий; этот блок не переносится в управляемую форму дословно.
Отказ от стандартной обработки не равнозначен отмене операции: например, закрытие отменяет Отказ.
Не заменяйте реальные события ручным вызовом одноимённой процедуры и не выдавайте статический разбор за выполнение 1С.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.