Как задать вопрос пользователю перед выполнением кода?

Материал из largespace
Версия от 12:22, 3 марта 2023; Irit (обсуждение | вклад) (Новая страница: «'''Вопрос''': ''Как задать вопрос пользователю программно перед выполнением кода, например когда нужно предупредить о наличии данных перед очисткой и заполнением?'' '''Ответ''': Чтобы задать вопрос программно, используется механизм ОписаниеОповещений. Д...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Вопрос:

Как задать вопрос пользователю программно перед выполнением кода, например когда нужно предупредить о наличии данных перед очисткой и заполнением?

Ответ:

Чтобы задать вопрос программно, используется механизм ОписаниеОповещений.

Для формирования вопроса необходимо добавить кнопку и определить у нее команду. Затем заполнить по примеру ниже:

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

&НаКлиенте
Процедура МояКнопкаЗавершение(Результат, ДополнительныеПараметры) Экспорт

	Если Результат = КодВозвратаДиалога.Да Тогда
		ДальнейшееДействие();
	КонецЕсли;
	
КонецПроцедуры