Уведомления
Уведомления — это системный механизм, позволяющий оповестить пользователя о том или ином событии. Он доступен только на клиенте.
Вместе с центром уведомлений, который открывается при нажатии на колокольчик в интерфейсе приложения, уведомления позволяют приложению взаимодействовать с пользователем. Например, они могут использоваться, чтобы:
- оповестить о новом письме;
- уведомить о том, что совещание скоро начнется;
- подтвердить, что заявка на отпуск/больничный была успешно создана и отправлена;
- вывести информацию о добавлении товара в корзину.
Во встроенном языке для описания уведомлений используется тип Уведомление. Вы можете создать простое уведомление следующим образом:
знч Уведомление = новый Уведомление("Заявка на ремонт отправлена",
"Заявка отправлена мастеру. Он свяжется с вами в ближайшее время")
Уведомление.Показать()
Виды уведомлений
«1С:Шина» поддерживает несколько видов уведомлений, подробная информация о которых представлена ниже. Для настройки вида уведомления используйте свойство Вид объекта Уведомление.
Системное
Отображается как стандартное уведомление браузера. Пользователь увидит такое уведомление, даже если у него не открыта вкладка с приложением или окно браузера свернуто. Используйте этот вид уведомлений для оповещения о срочных или важных событиях, о которых пользователь захочет узнать, даже если в данный момент он не работает в приложении. Это может быть уведомление о новом сообщении в чате или оповещение о начале видеоконференции.
Чтобы показать системное уведомление, присвойте свойству Вид значение Системное:
знч Уведомление = новый Уведомление("У вас одно новое сообщение!",
"Вам пришло новое личное сообщение. Нажмите, чтобы прочитать")
Уведомление.Вид = ВидУведомления.Системное
Уведомление.Показать()
Обычное
Отображается в правом верхнем углу окна приложения. Используется для оповещения о менее важном событии, когда немедленная реакция пользователя не требуется. Это может быть уведомление о завершении какой-либо длительной операции, например обновления, выгрузки или удаления приложения.
Чтобы показать обычное уведомление в приложении, присвойте свойству Вид значение Обычное. Вы также можете задать дополнительные настройки для уведомления: добавить изображение, задать оценку информации, отобразить компонент обратного отсчета.
знч Уведомление = новый Уведомление("Обновление приложения",
"Приложение успешно обновлено и готово к работе")
Уведомление.Вид = ВидУведомления.Обычное
Уведомление.ОценкаИнформации = ОценкаИнформации.Положительная
Уведомление.Показать()
Всплывающее
Всплывающее уведомление, которое отображается внизу экрана. Используется для подтверждения действия пользователя и показывается сразу после совершения действия. Например, пользователь нажал кнопку Сохранить или Скопировать и сразу же получил уведомление, что действие выполнено.
Чтобы показать всплывающее уведомление в приложении, присвойте свойству Вид значение Всплывающее:
знч Уведомление = новый Уведомление("", "Пример скопирован в буфер обмена")
Уведомление.Вид = ВидУведомления.Всплывающее
Уведомление.ОценкаИнформации = ОценкаИнформации.Положительная
Уведомление.Показать()
Скрытое
Не отображается в приложении, но может сохраняться в центре уведомлений, если включена настройка СохранитьВЦентреУведомлений
. Предназначено для уведомления о неважных длительных операциях.
Чтобы создать такое уведомление, присвойте свойству Вид значение Невидимое:
знч Уведомление = новый Уведомление("Заполнение данными",
"Заполнение тестовыми данными завершено")
Уведомление.Вид = ВидУведомления.Невидимое
Уведомление.СохранитьВЦентреУведомлений = Истина
Уведомление.ОценкаИнформации = ОценкаИнформации.Положительная
Уведомление.Показать()
Добавление кнопок к уведомлению
По умолчанию уведомления не содержат кнопок, однако вы можете их добавить.
Рассмотрим следующий сценарий: менеджер создал новое поручение сотруднику и сразу же получил уведомление о том, что поручение было создано.
Далее менеджер может открыть форму с поручением, нажав на кнопку Открыть, либо отменить поручение, нажав на кнопку Отмена. Кроме того, менеджер может закрыть уведомление нажатием на крестик: в таком случае ничего не произойдет.
Для добавления кнопок используйте тип ФрагментКомандногоИнтерфейса<КомандаСПараметром<Уведомление>>
и свойство уведомления Команды
. Оно содержит массив описаний команд:
знч Уведомление = новый Уведомление("Поручение создано",
"Вы успешно создали новое поручение. Можете просмотреть его или отменить")
знч КомандаОткрыть = новый КомандаСПараметром<Уведомление>(&ОткрытьПоручениеИзУведомления, "Открыть")
знч КомандаОтмена = новый КомандаСПараметром<Уведомление>(&ОтменаИзУведомления, "Отмена")
Уведомление.Команды = новый ФрагментКомандногоИнтерфейса<КомандаСПараметром<Уведомление>>([КомандаОткрыть, КомандаОтмена])
Уведомление.Показать()
Обработчики событий кнопок ПриНажатии
могут выглядеть следующим образом:
метод ОткрытьПоручениеИзУведомления(Команда: КомандаСПараметром<Уведомление>, Уведомление: Уведомление)
// Действия при нажатии на кнопку "Открыть"
// ...
;
метод ОтменаИзУведомления(Команда: КомандаСПараметром<Уведомление>, Уведомление: Уведомление)
// Действия при нажатии на кнопку "Отмена"
// ...
;
Кнопки не отображаются для стандартных уведомлений браузера: вы можете нажать только на само уведомление, и в этом случае будет выполнен обработчик нажатия первой кнопки. Остальные кнопки будут проигнорированы.
Обработка закрытия уведомления
С помощью свойства ПриЗакрытии
вы можете назначить обработчик, который будет выполнен при закрытии уведомления:
метод СоздатьУведомление()
знч Уведомление = новый Уведомление("Поручение создано",
"Вы успешно создали новое поручение. Можете просмотреть его или отменить")
Уведомление.СохранитьВЦентреУведомлений = Истина
Уведомление.ПриЗакрытии = &ПриЗакрытииУведомления
Уведомление.Показать()
;
метод ПриЗакрытииУведомления(Уведомление: Уведомление)
// Действия при закрытии уведомления
// ...
;
Этот обработчик будет вызван в следующих случаях:
- уведомление находится в центре уведомлений и пользователь нажал кнопку Очистить все;
- пользователь нажал на крестик в компоненте уведомления в центре уведомлений.
Центр уведомлений
Центр уведомлений — это всплывающее окно, в котором сохраняются уведомления с флагом СохранитьВЦентреУведомлений
, равным Истина
(по умолчанию он равен Ложь
и уведомления не сохраняются в центре уведомлений).
Чтобы открыть центр уведомлений, нажмите на колокольчик в интерфейсе приложения. Уведомления, сохраняющиеся в центре уведомлений, появляются здесь одновременно с отображением всплывающего окна с уведомлением.