0

Функция Вопрос

Функция выводит диалоговое окно, содержащее вопрос пользователю системы

Синтаксис

Функция Вопрос() имеет следующий синтаксис:

число Вопрос(Текст, [Режим = 0] [, Таймаут = 0])

А также альтернативный англоязычный синтаксис:

number DoQueryBox(Text, [Option = 0] [, Timeout = 0])

Параметры

Описание параметров функции Вопрос()

Имя параметра Тип Описание
Текст* Строка Текст вопроса пользователю (не забудьте указать вопросительный знак)
Режим Число Числовое выражение, определяющее режим отображения диалогового окна

возможные варианты:
0 Доступна только кнопка «ОК» (значение по умолчанию)
1 Доступны кнопки «ОК» и «Отмена»
2 Доступны кнопки «Стоп», «Повтор» и «Пропустить»
3 Доступны кнопки «Да», «Нет» и «Отмена»
4 Доступны кнопки «Да» и «Нет»
5 Доступны кнопки «Повтор» и «Отмена»
Строка Строковое выражение, определяющее режим отображения диалогового окна

возможные варианты:
ОК
OK
Доступна только кнопка «ОК» (значение по умолчанию)
ОК+Отмена
OK+Cancel
Доступны кнопки «ОК» и «Отмена»
Стоп+Повтор+Пропустить
Stop+Retry+Ignore
Доступны кнопки «Стоп», «Повтор» и «Пропустить»
Да+Нет+Отмена
Yes+No+Cancel
Доступны кнопки «Да», «Нет» и «Отмена»
Да+Нет
Yes+No
Доступны кнопки «Да» и «Нет»
Повтор+Отмена
Retry+Cancel
Доступны кнопки «Повтор» и «Отмена»
Таймаут Число Время ожидания реакции пользователя в секундах. По истечении указанного времени диалог ввода автоматически закрывается. Если значение равно 0 (нулю) или не указано, время ожидания не ограничено. Значение по умолчанию: 0
* — обязательный параметр

Возвращаемое значение

Число

Описание вариантов возвращаемых значений:

1 нажата кнопка «ОК»
2 нажата кнопка «Отмена»
3 нажата кнопка «Стоп»
4 нажата кнопка «Повтор»
5 нажата кнопка «Пропустить»
6 нажата кнопка «Да»
7 нажата кнопка «Нет»
-1 наступил таймаут (истекло время ожидания)

Строка

Описание вариантов возвращаемых значений:

ОК
OK
нажата кнопка «ОК»
Отмена
Cancel
нажата кнопка «Отмена»
Стоп
Stop
нажата кнопка «Стоп»
Повтор
Retry
нажата кнопка «Повтор»
Пропустить
Ignore
нажата кнопка «Пропустить»
Да
Yes
нажата кнопка «Да»
Нет
No
нажата кнопка «Нет»
Таймаут
Timeout
наступил таймаут (истекло время ожидания)

Описание

Функция Вопрос() выводит на экран диалоговое окно, содержащее вопрос пользователю и набор кнопок для выбора. При выборе пользователем какой-либо кнопки, диалоговое окно закрывается, а ее код возвращается функцией в точку вызова.
С помощью параметра Режим можно управлять составом кнопок, доступных пользователю. Тип значения, возвращаемого функцией, также зависит от способа задания режима. Если в параметре Режим Вы указали числовой код, функция вернет числовой код кнопки. Если в параметре Режим Вы указали символьное сочетание кнопок, функция вернет символьное имя выбранной кнопки.

Диалог вопроса на платформе 1С:Предприятие 7.7

Внимание!
Поскольку функция Вопрос() открывает диалог ввода в модальном режиме, избегайте ее использования в модуле проведения документов, а также в пределах открытой транзакции в многопользовательском режиме работы 1С:Предприятие 7.7

Пример использования

Пример кода с использованием функции Вопрос()

Ответ = Вопрос("В процессе выполнения обработки возникли ошибки.
	|Каковы будут дальнейшие указания?
	|
	| Нажмите ""Стоп"", чтобы прервать обработку
	| Нажмите ""Повтор"", чтобы повторить обработку
	| Нажмите ""Пропустить"", чтобы игнорировать ошибки и продолжить обработку", "Стоп+Повтор+Пропустить");

Если Ответ = "Стоп" Тогда
	Возврат;
ИначеЕсли Ответ = "Повтор" Тогда
	Перейти ~НачалоОбработки;
КонецЕсли;  

Состояние("Идет обработка...");

Поделиться страницей в соц.сетях

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *