Показать подтверждение закрытия Формы

RomanVG 122 1 6 1

Вариант 1. Будет выведено сообщение "Закрыть форму?" и 2 кнопки "Да/Нет".
У формы нужно добавить реквизит, например "ЗакрытьФормуБезПодтверждения", содержащий в себе признак того, нужно выводить предупреждение или нет.

&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
	ТекстПредупреждения = "Закрыть форму?";
	Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект);
	ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезПодтверждения", Оповещение);
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьИЗакрыть(Результат = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт
   ЗакрытьФормуБезПодтверждения = Истина;
КонецПроцедуры

Вариант 2. Будет выведено сообщение "Данные были изменены. Сохранить изменения?" с 3 кнопками "Да/Нет/Отмена". Появление вопроса зависит от свойства модифицированности формы.

&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
   Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект);
   ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы);
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьИЗакрыть(Результат = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт
   // записываем данные формы.
   // ...
   Модифицированность = Ложь; // не выводить подтверждение о закрытии формы еще раз.
   Закрыть();
КонецПроцедуры
0

Еще в "Все"

Добавление команды в общую форму отчета на БСП

Использование в Мобильном Приложении (Андроид) сканера ШтрихКодов с компонентой Драйвер1СУстройствоВводаNative от 1С

Присоединение печатной формы в виде файла к объекту-основанию

ИР Кнопка "Сравнить" в окне "Выражение"

ИР Редактировать таблицу

ИР Найти в окнах

ИР Кнопка "Условие останова" в окне "Выражение"

ИР кнопки "Вертикаль" и "Горизонталь" окна "Тип элемента" редактора формы

ИР Кнопка "Список" в окне <Коллекция>

ИР Редактировать компоновку

Модератору