ПоказатьВопросПользователю

Автор: 1С
ОбщийМодуль.СтандартныеПодсистемыКлиент
БСП

Показать форму вопроса.

// Показать форму вопроса.
//
// Параметры:
//   ОписаниеОповещенияОЗавершении - ОписаниеОповещения - описание процедуры, которая будет вызвана после закрытия окна
//                                                        вопроса со следующими параметрами:
//                                                          РезультатВопроса - Структура - структура со свойствами:
//                                                            Значение - результат выбора пользователя: значение
//                                                                       системного перечисления или значение,
//                                                                       связанное с нажатой кнопкой. В случае закрытия
//                                                                       диалога по истечении времени - значение
//                                                                       Таймаут.
//                                                            БольшеНеЗадаватьЭтотВопрос - Булево - результат выбора
//                                                                                                  пользователя в
//                                                                                                  одноименном флажке.
//                                                          ДополнительныеПараметры - Структура 
//   ТекстВопроса                  - Строка             - текст задаваемого вопроса. 
//   Кнопки                        - РежимДиалогаВопрос, СписокЗначений - может быть задан список значений, в котором:
//                                       Значение - содержит значение, связанное с 
//                                                  кнопкой и возвращаемое при выборе кнопки. В качестве значения может
//                                                  использоваться значение
//                                                  перечисления КодВозвратаДиалога, а также другие значения,
//                                                  поддерживающее XDTO-сериализацию.
//                                       Представление - задает текст кнопки.
//
//   ДополнительныеПараметры       - Структура          - см. СтандартныеПодсистемыКлиент.ПараметрыВопросаПользователю.
//
// Возвращаемое значение:
//   Результат выбора пользователя будет передан в метод, описанный параметром ОписаниеОповещенияОЗавершении. 
//
Процедура ПоказатьВопросПользователю(ОписаниеОповещенияОЗавершении, ТекстВопроса, Кнопки, ДополнительныеПараметры = Неопределено) Экспорт
	
	Если ДополнительныеПараметры <> Неопределено Тогда
		Параметры = ДополнительныеПараметры;
	Иначе
		Параметры = Новый Структура;
	КонецЕсли;
	
	ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, ПараметрыВопросаПользователю(), Ложь);
	
	Если ТипЗнч(Кнопки) = Тип("РежимДиалогаВопрос") Тогда
		Если      Кнопки = РежимДиалогаВопрос.ДаНет Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ДаНет";
		ИначеЕсли Кнопки = РежимДиалогаВопрос.ДаНетОтмена Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ДаНетОтмена";
		ИначеЕсли Кнопки = РежимДиалогаВопрос.ОК Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ОК";
		ИначеЕсли Кнопки = РежимДиалогаВопрос.ОКОтмена Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ОКОтмена";
		ИначеЕсли Кнопки = РежимДиалогаВопрос.ПовторитьОтмена Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ПовторитьОтмена";
		ИначеЕсли Кнопки = РежимДиалогаВопрос.ПрерватьПовторитьПропустить Тогда
			КнопкиПараметр = "РежимДиалогаВопрос.ПрерватьПовторитьПропустить";
		КонецЕсли;
	Иначе
		КнопкиПараметр = Кнопки;
	КонецЕсли;
	
	Если ТипЗнч(Параметры.КнопкаПоУмолчанию) = Тип("КодВозвратаДиалога") Тогда
		Параметры.КнопкаПоУмолчанию = КодВозвратаДиалогаВСтроку(Параметры.КнопкаПоУмолчанию);
	КонецЕсли;
	
	Если ТипЗнч(Параметры.КнопкаТаймаута) = Тип("КодВозвратаДиалога") Тогда
		Параметры.КнопкаТаймаута = КодВозвратаДиалогаВСтроку(Параметры.КнопкаТаймаута);
	КонецЕсли;
	
	Параметры.Вставить("Кнопки",         КнопкиПараметр);
	Параметры.Вставить("ТекстСообщения", ТекстВопроса);
	
	ОткрытьФорму("ОбщаяФорма.Вопрос", Параметры,,,,,ОписаниеОповещенияОЗавершении);
	
КонецПроцедуры

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
FastCode - сервис для программистов 1С

Похожие публикации

Показать вопрос

ПоказатьВопросУстановкиКомпонентыСканирования (БСП)

ПоказатьВопросЗаписиНовогоВладельца (БСП)

ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами (БСП)

ПоказатьПодтверждениеЗакрытияПроизвольнойФормы (БСП)