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

RomanVG 100 6 1

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

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

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

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

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

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

Еще в "Все"

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

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

Использование СканераШтрихКодов с компонентой Драйвер1СУстройствоВводаNative от 1С

ИР Открыть список

Дополнительный доход для разработчика 1С не отходя от кассы (компьютера)

При запуске конфигурации, с подключенным расширением, возникает ошибка "Недопустимое состояние объекта"

Ищем разработчиков 1С. Платим 5000 рублей за 3 обработки + 80% с каждой оплаты

Модератору