<%TOPIC_VERSION_TEXT%>
<%TOPIC_UPDATE_TEXT%>

Зоны расширения для виджетов в модулях

Вы можете изменять некоторые интерфейсы системы с помощью зон расширения для виджетов, созданных в пользовательских модулях.

Например, можно заменить содержимое блока о сотруднике в разделе Компания или добавить кнопки для запуска процесса из модуля на верхнюю панель формы просмотра приложения.

Зоны расширения определяют, где будет использоваться виджет из модуля и какую часть интерфейса он заменит или дополнит. Для этого зоны расширения объединены в группы по местам доступности в системе и их назначению. Например, Группа зон расширения пользователей содержит несколько опций. Каждая из них позволяет отобразить создаваемый виджет вместо стандартного блока о сотруднике в определённом месте системы.  

 

Выбрать зону расширения под назначение виджета

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

Что нужно сделать

Какую зону расширения выбрать

Изменить содержимое блоков с информацией о сотрудниках:

  • в окне, всплывающем при нажатии на имя пользователя;
  • на вкладке Профиль в настройках пользователя;
  • на некоторых страницах раздела Компания.

 

Группа зон расширения пользователя

Расширить функциональность верхней панели на форме просмотра приложения

Группа зоны расширения тулбара > Зона расширения тулбара

Заменить содержимое в виджете Иерархическая структура

Иерархическая структура > Меню элемента структуры

Запустить сбор метрик или инициализировать скрипт при запуске системы

Общие > Корневой компонент

При подписании документа добавить возможность использования МЧД и изменения провайдера электронной подписи

Подпись приложения

Настроить просмотр и редактирование документов через пользовательский модуль интеграции с редактором файлов

Предпросмотр файлов > Страница предпросмотра

Отобразить виджет на верхней панели страниц приложений со списком элементов

Список элементов приложения > Зона расширения тулбара

 

Для использования и работы виджетов в указанных зонах расширения включите модуль, в котором такой виджет создан. Подробнее о том, как создать виджет с зоной расширения, читайте в статье «Виджеты в модулях».

В этой статье рассмотрим типы зон расширения, доступные в настройках виджета.

Группа зон расширения пользователя

С помощью зон расширения пользователя вы можете создать в модуле виджеты и заменить ими стандартные блоки с данными о сотрудниках. Каждая из зон расширения определяет место в системе, где отобразится настроенный виджет.

Когда вы добавляете в модуль виджет с любой из зон расширения пользователя, в контексте виджета становятся доступны следующие свойства:

Виджет создаётся с нуля: в дизайнере интерфейсов на вкладке Шаблон разместите на поле для моделирования нужные вложенные поля свойств User и Employee. Содержимое настроенного виджета отобразится в блоке о сотруднике.

Например, в контекст справочника Сотрудники вы добавили поле Формат работы. По умолчанию оно не отображается во всплывающем окне при нажатии на имя сотрудника. Чтобы показать это поле, создайте виджет с зоной расширения Поповер с краткой информацией и добавьте в него нужные поля, включая поле Формат работы.

Поповер с краткой информацией

Позволяет заменить стандартный блок с данными о сотруднике во всплывающем окне, которое открывается при нажатии на имя сотрудника.
extension-zones-1

Профиль пользователя

Используется, чтобы заменить блок с информацией о сотруднике, который открывается при нажатии на странице Компания > Исполнительская дисциплина на аватар или имя пользователя.
extension-zones-2

Редактирование профиля пользователя

Позволяет заменить содержимое вкладки Профиль в настройках пользователя.
extension-zones-3

В виджете с зоной расширения Редактирования профиля пользователя форма создаётся с нуля:

  1. В дизайнере интерфейсов на вкладке Шаблон вынесите вложенные поля из свойств User и Employee, значения которых сможет изменять сотрудник.
  2. На вкладке Шаблон добавьте виджет Кнопка с названием Сохранить.
  3. На вкладке Скрипты напишите скрипт, с помощью которого сохранятся внесённые сотрудником изменения. В скрипте используйте:
  • метод save() ко всем полям, которые вы добавили на форму, чтобы сохранить значения, указанные сотрудником;
  • переменную типа Выбор «да/нет» с кодом isSavedSuccessfully, чтобы отобразить системное сообщение об успешном сохранении данных. Для этого установите для этой переменной значение true.
  1. В настройках виджета Кнопка укажите созданный скрипт.
  2. Сохраните и опубликуйте настроенный виджет.

Пока модуль с виджетом будет включён, пользователи в настройках своего профиля будут использовать настроенную форму для изменения своих данных.

Карточка сотрудника раздела Компания

Позволяет заменить стандартный блок о  сотруднике, который отображается на следующих страницах раздела Компания: Сотрудники, Мой отдел, Новые сотрудники, Дни рождения, График отсутствий, Мои замещения и Исполнительская дисциплина.

По умолчанию в блоках о сотрудниках на этих страницах доступны ссылка на профиль пользователя, его должность и статус отсутствия.

extension-zones-6

 

Группа зоны расширения тулбара

На верхней панели формы просмотра всех приложений размещён виджет Зона расширения тулбара. По умолчанию он пуст. Если в модуле создать виджет с опцией Группа зоны расширения тулбара > Зона расширения тулбара, он отобразится на форме.

Например, таким образом можно вынести кнопку на форму приложения, которая запускает бизнес-процесс, настроенный в модуле.
toolbar_2

Иерархическая структура

При выборе зоны расширения Иерархическая структура > Меню элемента структуры содержимое создаваемого виджета отобразится там, где размещён виджет Иерархическая структура и автоматически заменит информацию, отображаемую в нём по умолчанию.

 

Общие

При выборе зоны расширения Общие > Корневой компонент создаваемый виджет инициализируется, и его скрипт выполнится при загрузке системы. В скрипт виджета добавьте функцию async function onInit() и в этой функции пропишите вызов метода, который должен выполниться. Например, можно задать метрики посещаемости страниц системы, отслеживая в скрипте изменение URL-адреса.

начало внимание

Если в скрипте виджета используется константа Global, модуль с таким виджетом не экспортируется.

конец внимание

Подпись приложения

По умолчанию на верхней панели формы просмотра всех приложений размещён виджет Подпись приложения, с помощью которого сотрудники могут подписать элементы приложений электронной подписью. Вы можете расширить функциональность этого виджета, используя группу зон расширения Подпись приложения:

  • Выбор МЧД при подписании — позволяет указать доверенность, подтверждающую право подписи документа;
  • Информация о МЧД в архиве подписей — в архиве подписей можно отображать данные о применённой доверенности.
     
    Опции выбора МЧД при подписании и отображения в архиве подписей применяются, если в компании установлено бизнес-решение Управление МЧД. Подробнее читайте в статье «Пользовательский модуль для выбора МЧД при подписании»;
  • Подпись приложения на форме просмотра — при подписании документа можно выбрать нового провайдера электронной подписи.
    extension-zones-5

Предпросмотр файлов

Для просмотра и редактирования документов доступны модули интеграции с OnlyOffice и Р7-Офис. Если нужный формат файлов в них не поддерживается, создайте пользовательский модуль и добавьте в него виджет с зоной расширения Предпросмотр файлов > Страница предпросмотра. Он позволит работать с файлами тех форматов, для которых вы настроите модуль.

С примером можно ознакомиться в статье «Пользовательский модуль для просмотра и редактирования файлов», а также в справке ELMA365 TS SDK.

 

Список элементов приложения

С помощью зоны расширения Список элементов приложения > Зона расширения тулбара создаваемый виджет можно разместить на верхней панели страницы приложения.

По умолчанию на этой панели есть виджет Зона расширения тулбара, который позволяет пользователям на страницах приложений работать с виджетами модуля. Например, можно добавить кнопку для запуска процесса из модуля, которая отобразится справа от стандартной кнопки создания элемента приложения.