Smart Forms

Ведение справочников (НСИ)

В данном разделе мы рассмотрим пример создания измерения для справочника НСИ (нормативно-справочной информации), при этом воспользуемся механизмом автоматической загрузки из файла Excel, а также разберем настройку интерфейса для заполнения.

Загрузка данных из файла Excel

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

Сделаем это на простом примере. Для продолжения скачайте демоданные в формате Excel.
Файл представляет собой выгрузку из БД со списком сотрудников и номерами их документов.

Для того чтобы автоматически создалась вся структура измерений, необходимо предварительно подготовить (настроить) разметку полей в файле.

Настройка файла перед загрузкой

Для этого необходимо:
  1. Добавить две пустые строки в файле так, чтобы они были первыми в списке. В них мы будем описывать необходимые нам параметры.
  2. В первую (верхнюю) строку добавить тип данных (он может быть только один):
  • String — Строка
  • Text — Текст
  • Date — Дата
  • Integer — Целое число
  • Float — Дробное число
  • Link — Ссылка*

*Тип данных «Ссылка» ссылается на значения из других измерений. Это позволяет избежать дублирования и ускоряет процесс создания измерений.
Для такого типа данных указывается следующая запись: «Link->dim_<Идентификатор измерения на которое идет ссылка>».

В нашем случае мы ссылаемся на уже имеющееся измерение «dim_Mediastore_Dokument».

3. Для второй строки указывается свойство или свойства атрибутов (признак атрибута):

  • Group — Группировочный атрибут
  • Title — Заголовочный атрибут
  • KeyPart — Атрибут является частью уникального ключа
  • Required — Обязательный для заполнения
  • Unique — Значение атрибута должно быть уникальным

Если элемент содержит несколько признаков, то их следует указывать через разделитель «, пример «Title|KeyPart».

Признаки «Group» и «Title» взаимоисключающие, использовать вместе такие признаки атрибута нельзя.

Более подробно с типами данных и свойствами атрибутов можно ознакомиться здесь.
Название измерения берется из названия первого листа, загружаемого Excel, если в поле «Наименование измерения» не указано другое.
ViTalk GPT
Виртуальный ассистент
Пример загружаемого файла

Загрузка

Загрузка файла происходит в панели администратора. Для этого:

  1. В панели администрирования в разделе «Измерения» нажмите кнопку «Измерения».

2. В правой части окна нажмите кнопку «Загрузить из файла».

3. В проводнике выберите нужный Excel-файл (требования к загружаемом файлу см. ниже).

4. После выбора нужного файла автоматически начнется его загрузка.
!
  • Если название загружаемого измерения уже существует, то файл не будет загружен и не будет создано измерение. Система выдаст предупреждение.
  • Если есть некорректные данные, то система предупредит об этом.
Для того, чтобы «не потерять» загруженное измерение, включим параметр «Показывать на главном экране». Он позволяет перейти к справочнику из пользовательского интерфейса.

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

Создание вкладок и настройка правил заполнения

Интерфейс может отличаться в зависимости от версии платформы.
В боковом меню выбираем раздел «Справочники» и выбираем нужный нам справочник (Менеджеры_1).

Для того чтобы отобразить все атрибуты, нажмите кнопку «Настройки таблицы», выберите все поля и нажмите «Сохранить».

В этом окне можно как добавлять/удалять записи, так и редактировать их, то есть каким-либо образом влиять на состояние справочника.
Чтобы добавить данные (запись), нажмите соответствующую кнопку «Добавить строку».
Перед нами откроется интерфейс ввода данных.

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

К примеру, если мы начнем заполнять и выберем тип документа «Паспорт», то у нас будет поле «Номер документа», с которым не совсем понятно, что делать, то есть это поле актуально для «Другого документа». При этом, если выбрать его, то поля «Серия» и «Номер» становятся лишними.
Сделать так, чтобы у оператора ввода не появлялось вопросов, какие поля нужно заполнять, а какие оставить пустыми, можно, создав «вкладки» и настроив «правила заполнения справочников».

Вкладки

Интерфейс может отличаться в зависимости от версии платформы.
Начнем с настройки «вкладок». Делается это в Панели администратора → выбираем нужное измерение, переходим на соответствующую вкладку, и у нас открывается интерфейс, в котором необходимо сгруппировать существующие поля.
Механика создания вкладок для пользователя такова: из общего списка мы перетаскиваем поле «Вкладка» и на нее добавляем нужные нам поля, которые и будут в ней находиться. Чтобы дать имя вкладке, достаточно нажать на нее и написать в поле «Опции» → «Имя вкладки» ввести название (имя).
Интерфейс может отличаться в зависимости от версии платформы.
Создадим вкладки с названиями:
1
Ф.И.О.
2
Документ
  • Фамилия
  • Имя
  • Отчество
  • Дата рождения
  • Документ
  • Серия
  • Номер
  • Выдан
  • Номер документа
  • Дата выдачи
И сохраняем.

Теперь форма ввода имеет более понятный интерфейс, что снижает вероятность ошибки при заполнении.

Настройка правил заполнения

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

По-другому можно сказать, что правила — это сценарии поведения полей (формы) для заполнения.
Интерфейс правил также находится в панели администратора на соответствующей вкладке.

  • Добавим новое правило.
После того как мы нажали кнопку «Добавить правило», открывается окно, в котором мы задаем параметры сценариев (поведения) строк формы (справочника).

Данный блок настроек поделен на три блока:
  • Условие, где мы добавляем триггер на запуск механизма сценария;
  • Действие, которое будет выполняться при заданном условии;
  • Дополнительно — здесь можно написать комментарий для оператора ввода.
Для начала скроем все атрибуты из списка вкладки «Документ»:
1
Для создания первого уровня условия мы нажимаем кнопку «+ условие» и выбираем, что мы проверяем: выбираем атрибут «Документ» и добавляем условие (Значение отсутствует).

В блоке «Дополнительно» дается описание системой, например, «Если Значение атрибута "Документ" не заполнено, то [Действие отсутствует]».
2
Как видно, «Действие» отсутствует, значит, нам его нужно добавить. Нажимаем во втором блоке соответствующую кнопку.

Первым шагом нам необходимо скрыть лишние атрибуты (поля), для этого в поле «Объекты» выбираем:
  • серия,
  • номер,
  • выдан,
  • номер документа,
  • дата выдачи.

Вторым шагом добавляем действие, в нашем случае «Скрыть атрибут».
3
И в последнем блоке дадим комментарий для оператора ввода.
Скопируем «Текстовое описание» системы и вставим в поле «Комментарий».
Настройка получилась такого вида.

  • Сохраняем это правило.
Теперь добавим сценарии, когда у нас выбран паспорт (Документ 1)
Для этого добавляем новое правило, нажимаем соответствующую кнопку «Добавить правило» и действуем по тому же алгоритму (логике):
1
Нажимаем кнопку «+ условие» и выбираем, что мы проверяем.
Выбираем атрибут «Документ».
Добавляем условие (Значение из списка).
И выбираем элементы значения, с которыми будем сравнивать (Паспорт гражданина РФ).

Видим описание: «Если Значение атрибута "Документ" из списка (Паспорт гражданина РФ), то [Действие отсутствует]».
2
Во втором блоке добавляем действие.

  1. Первым шагом оставим скрытыми атрибуты (поля), которые не будут видны, если выбран паспорт. Для этого выбираем «Номер документа», «дата выдачи» и назначаем действие «Скрыть атрибут».
  2. Но также нам нужно отобразить те поля, которые относятся к «Паспорту РФ», поэтому добавляем еще одно действие и выбираем:
  • серия,
  • номер,
  • выдан.

Меняем действие на «Показать атрибут».
3
И в последнем блоке дадим комментарий для оператора ввода.
Скопируем «Текстовое описание» системы и вставим в поле «Комментарий».
Таким образом мы сделали определенную логику (сценарий) при выборе паспорта.

  • Сохраняем настройки.
И таким же образом добавим сценарии, когда у нас выбран другой документ (Документ 2)
Для этого добавляем новое правило, нажимаем соответствующую кнопку «Добавить правило» и действуем по тому же алгоритму (логике):
1
Нажимаем кнопку «+ условие» и выбираем, что мы проверяем.
Выбираем атрибут «Документ».
Добавляем условие (Значение из списка).
И выбираем элементы значения, с которым будем сравнивать (Другой документ, удостоверяющий личность).
2
Во втором блоке добавляем действие.

1. Первым шагом оставим скрытыми атрибуты (поля), которые не будут видны, если выбран паспорт. Для этого выбираем:
  • серия,
  • номер,
  • выдан.
И назначаем действие «Скрыть атрибут».

2. Вторым шагом нужно отобразить те поля, которые относятся к «Документу 2», поэтому добавляем еще одно действие и выбираем «Номер документа» и «дата выдачи».

Меняем действие на «Показать атрибут».
3
И в последнем блоке дадим комментарий для оператора ввода.
Скопируем «Текстовое описание» системы и вставим в поле «Комментарий».
Таким образом мы сделали определенную логику (сценарий) при выборе паспорта.

  • Сохраняем настройки.

Убеждаемся, что эти правила не противоречат, а дополняют друг друга.
Посмотреть, как изменилась форма, можно в пользовательском интерфейсе, в разделе Справочники:
Теперь мы можем управлять поведением пользователя (оператора ввода) при заполнении формы справочника. Это позволяет ввести в нормативно-справочную документацию дополнительную верификацию данных.
Показатели
Измерения
Создание формы для заполнения
Настройка формы пользовательского ввода
Настройка
бизнес-правил
Настройка форматно - логического
контроля
Создание тиража
Добавление системы согласования
Группа показателей
Справочник
Форма
Как вам курс?