Перейти к содержанию

DialogService#

Наследник класса Service. Содержит функционал диалоговых окон и оповещений.

Методы#

confirm#

Выводит диалоговое окно с текстом и двумя кнопками.

this.services.dialog.confirm(msg, okText, cancelText, options);
параметр тип описание
message string Выводимое сообщение
okText string Текст на первой кнопке
cancelText string Текст на второй кнопке
options string параметры
options.whiteSpace string Определяет отображение пробелов и переносов строк. Аналогично css свойству white-space. По умолчанию 'pre-wrap'

error#

Выводит оповещения об ошибке.

this.services.dialog.error(message, options);
параметр тип описание
message string Выводимое сообщение
options object или bool параметры
options.delay int время отображения в миллисекундах. Если 0, то сообщение не будет скрываться.

info#

Показывает элемент оповещения.

this.services.dialog.info(message, options);
параметр тип описание
message string Выводимое сообщение
options object или bool параметры
options.delay int время отображения в миллисекундах. Если 0, то сообщение не будет скрываться.

Примечание

Если вторым параметром передан true, то сообщение не будет скрываться (устаревший способ).

message#

Выводит диалоговое окно с текстом и одной кнопкой.

this.services.dialog.message(message, okText, options);
параметр тип описание
message string Выводимое сообщение
okText string Текст на кнопке
options string параметры
options.whiteSpace string Определяет отображение пробелов и переносов строк. Аналогично css свойству white-space. По умолчанию 'pre-wrap'

openPeriodDialog#

Выводит диалог выбора периода

this.services.dialog.openPeriodDialog(args);

Примеры#

openPeriodDialog#

1
2
3
4
5
6
7
<Group caption="PeriodDialog">
    <Button value="Открыть диалог" editorWidth="2" clicked="openPeriodDialog" captionWidth="2"/>
    <Break/>
    <DateTimeInput id="periodStartInput" captionWidth="2" editorWidth="3" caption="Начало периода"/>
    <DateTimeInput id="periodEndInput" captionWidth="2" editorWidth="3" caption="Конец периода"/>
    <DateTimeInput id="periodBaseInput" captionWidth="2" editorWidth="3" caption="Расчётная дата"/>
</Group>

В системе реализован специализированный интерфейс (диалог) выбора временного периода. Основным применением его является выбор периода для загрузки данных в реестрах. Но также обращаться к нему можно с помощью системного сервиса Dialog. Для обращения к диалогу требуется использовать три контрола: для начала периода, конца периода и расчётной даты. При работе с диалогом выбранные в нём значения периода будут переданы в использованные при его вызове контролы.

openPeriodDialog () {
    const { services, controls } = this;

    services.dialog.openPeriodDialog({
        bDateControl: controls.periodStartInput,
        eDateControl: controls.periodEndInput,
        rDateControl: controls.periodBaseInput,
        buttonOkHandler: () => { services.dialog.info('Период выбран!') },
        buttonCancelHandler: () => {
            controls.periodStartInput.value = null
            controls.periodEndInput.value = null
            controls.periodBaseInput.value = null
        }
    })
}

При вызове метода открытия диалога выбора периода необходимо передать в качестве параметров ссылки на нужные контролы. Также можно задавать функции-обработчики для событий нажатия на кнопки подтверждения и отмены выбора периода (свойства buttonOkHandler и buttonCancelHandler).