ПоказатьВопрос в подписке на событие "Перед записью"

1. Arkadag 14.03.23 08:56 Сейчас в теме
Приветствую, Форумчане!

Создал подписку на событие "перед записью" для справочника. Ссылается на общий модуль "КонтрольИзмененийРеквизитовСервер" (серверный модуль)

Всё работает. Измененные реквизиты фиксируются.

Возникла необходимость при сохранении справочника вывести сообщение типа "Вы пытаетесь внести изменения в справочник. Вы уверены?"
С кнопками Да/Нет.

Подскажите как применить ПоказатьВопрос с оповещением в моем случае с подпиской на событие перед записью?
ПоказатьВопрос и Оповещение работают на Клиенте, а у меня весь код регистрации измененных реквизитов в серверном общем модуле.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SlavaKron 14.03.23 09:18 Сейчас в теме
(1) Используйте событие формы элемента справочника ПередЗаписью на клиенте для вывода вопроса.
4. Arkadag 14.03.23 09:40 Сейчас в теме
(2) Пробовал поставить в самом справочнике вопрос. Но сначала у меня сработала подписка на событие и зафиксировало все изменения, а потом задал вопрос...
5. glek 119 14.03.23 10:02 Сейчас в теме
(4) А как сделали? показали вопрос и отказ установили в истину? (в форме)
3. Dr.HiHi 3 14.03.23 09:26 Сейчас в теме
(1) создать свою кнопку записи
6. Arkadag 14.03.23 10:08 Сейчас в теме
Жаль, что пришлось это делать это на форме. Теперь везде нужно будет код добавлять в расширение на каждый справочник. В подписке на событии было бы лучше...

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

КонецПроцедуры

&НаКлиенте
Процедура ПередЗаписьюЗавершениеРеквизиты(Результат, ПараметрыЗаписи) Экспорт
	
	Если Результат = Неопределено Тогда
		Возврат;		
	КонецЕсли; 
	
	Если Результат.Значение = КодВозвратаДиалога.Да Тогда
		ПараметрыЗаписи.Вставить("ПропуститьПроверку");
		Записать(ПараметрыЗаписи);
	КонецЕсли;                       
	
КонецПроцедуры  
Показать
7. user1863362 14.03.23 12:04 Сейчас в теме
(6)
В подписке на событии было бы лучше...
До первого запуска групповой обработки, ага. Это еще не пускаясь в рассуждения о ведении диалогов с пользователем внутри открытой транзакции.
8. lefthander 14.03.23 12:35 Сейчас в теме
(6)
В подписке на событии было бы лучше...
Вопрос Вы можете задать в контексте формы... На сервер вопросы не задаются....
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот