Skip to main content

Представления

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

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

image.png

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

Поле «Формат» определяет тип результирующего набора данных с точки зрения интерфейса. Значение «Таблица» задаёт табличное представление выборки и используется по умолчанию для списков, журналов и аналитических таблиц. Другие значения формата (если доступны в конфигурации) предназначены для специализированных сценариев, таких как агрегированные наборы для диаграмм или нестандартные структуры данных. Поле «Шаблон заголовка» используется для построения текстового заголовка строк или групп, в котором могут применяться ссылки на поля выборки; в простейшем случае указывается номер шаблона или идентификатор преднастроенного варианта.

Флажок «Экспериментальный режим» включает расширенные или нестабильные функции представления, используемые при тестировании новых возможностей. Применение данного режима рекомендуется ограничивать тестовыми стендами. Опция «Объединять строки» управляет логикой агрегации строк в результирующей выборке. При её включении система может выполнять группировку записей по совпадающим ключам и формировать объединённые строки вместо полного детализированного списка. В нижней части окна доступны операции сохранения: «Сохранить» для фиксации изменений без запуска, «Сохранить и запустить предпросмотр» для проверки результата выборки и «Закрыть» для выхода без сохранения.

Управление полями представления

image.png

Вкладка «Управление полями» предназначена для конфигурирования состава полей представления. В таблице полей для каждой позиции задаются машинное имя, псевдоним, тип, источник, название сущностей, признак основной сущности, параметры связи и автор. Машинное имя используется в качестве внутреннего идентификатора поля в запросах и при дальнейшем обращении из форм и скриптов. Псевдоним задаёт человекочитаемое название столбца, отображаемое пользователю в интерфейсе. Тип поля отражает природу атрибута и его источник, например «Атрибут задачи» или «Атрибут контента», и определяет способ получения значения.

Поле «Источник» указывает исходный атрибут в базовой сущности или связанном объекте, из которого подставляется значение. Поле «Название сущностей» фиксирует, к какой сущности относится данный атрибут в контексте схемы представления. Признак основной сущности позволяет отметить ту сущность, которая считается центральной для выборки и относительно которой строится остальная структура. Колонка «Связь» содержит информацию о логическом отношении к другим сущностям (используемому join или типу связи). Колонка «Автор» может применяться для фиксации пользователя, создавшего или изменившего определение поля, что важно при командной настройке.

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

Схема представления

image.png

Вкладка «Схема» отображает графическое представление структуры данных, лежащей в основе представления. На схеме каждая сущность отображается в виде блока, а связи между сущностями изображаются линиями с указанием типа соединения (LEFT JOIN, INNER JOIN и т.п.). Схема является визуальным редактором запросов: по факту она описывает, какие сущности участвуют в выборке, как они связаны между собой и какие поля из каждой сущности выводятся наружу.

В левой панели схемы доступен перечень типов сущностей, которые могут быть добавлены в представление. Типы включают, в частности, CONTENT, PROCESS, TASK, USER, USER GROUP и другие, доступные в текущей конфигурации. Выбор типа определяет набор доступных полей и семантику сущности:

  • CONTENT — сущности материалов (карточки, документы, заявки и т.п.). В блоке указываются типы материалов, а ниже отображаются атрибуты контента: ID, автор, даты, номер, тема, статус, модуль, тип ошибки и др.

  • PROCESS — сущности бизнес‑процессов, включающие атрибуты процесса: идентификатор, состояние, параметры маршрута.

  • TASK — сущности задач, связанных с бизнес‑процессами. Здесь доступны атрибуты задачи: ID, наименование, исполнитель, процесс, контент, кандидат, группы кандидатов, дата создания и т.д.

  • USER — сущности пользователей системы. Блок содержит поля ID, email, имя, автор и дополнительные реквизиты пользователя.

  • USER GROUP — сущности групп пользователей. Используются для фильтрации и join’ов по ролям и групповой принадлежности.

Каждый блок сущности содержит заголовок (наименование сущности), строку настройки типа (например, выбор типа материалов для CONTENT) и список полей с цветовой маркировкой. Зеленые маркеры обычно обозначают поля, доступные для выбора и фильтрации, синие — поля, участвующие в связях или уже добавленные в представление. Наличие маркера означает, что по полю можно строить связи и использовать его в запросе.

В верхней части блока сущности расположена панель инструментов с набором иконок:

  • значок с галочкой — «Установить как основную сущность». При активации сущность помечается как главная для данного представления. Основная сущность определяет базовую таблицу выборки, к которой присоединяются остальные сущности через join.

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

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

  • значок воронки — переход к настройке фильтров для данной сущности. Через него задаются условия отбора на уровне сущности: по статусу, типу материала, диапазонам дат, ответственному и другим полям. Фильтры, заданные на этом уровне, применяются ко всем потребителям представления.

  • значок плюс — «Добавить поле представления». При нажатии поле, выбранное в списке атрибутов сущности, добавляется в перечень полей представления (вкладка «Управление полями»). Это управление позволяет включать в результирующий набор только необходимые атрибуты, оставляя технические поля внутри схемы.

Связи между сущностями отображаются линиями, соединяющими маркеры полей. Подпись на линии (EXISTS, WHERE CONDITION, INNER JOIN, LEFT JOIN, RIGHT JOIN и др.) определяет тип соединения.

Тип соединения задаётся в окне «Настройки соединения» и напрямую влияет на результат выборки и производительность:

  • INNER JOIN — в результирующую выборку попадают только те записи, для которых существуют связанные строки в обеих сущностях. Используется, когда наличие связанной записи обязательно (например, вывод задач, у которых обязательно есть связанная заявка).

  • LEFT JOIN — в выборку включаются все записи из левой (исходной) сущности. Данные из правой сущности подставляются только при наличии соответствующей записи; при её отсутствии значения полей правой сущности равны NULL. Применяется, когда связанная информация опциональна, но требуется сохранить полный список базовых записей.

  • RIGHT JOIN — симметричен LEFT JOIN, но базовой считается правая сущность. На практике используется реже, так как тот же результат можно получить перестановкой сущностей и использованием LEFT JOIN.

  • EXISTS — соединение по принципу проверки существования. В выборку включаются записи основной сущности, для которых существует хотя бы одна связанная запись, удовлетворяющая заданному условию. Поля связанной сущности при этом, как правило, не выводятся, соединение используется исключительно как фильтр по факту наличия связей.

  • WHERE CONDITION — соединение, реализуемое через условие в секции WHERE без явного join’а. В этом режиме между сущностями задаётся логическое условие (например, равенство идентификаторов), которое используется для фильтрации. Режим целесообразен, когда не требуется выводить поля второй сущности и важно только логическое ограничение выборки.

Добавление новой сущности в схему выполняется перетаскиваниемкликом её типа из левой панели или через соответствующую кнопку добавления (в зависимости от интерфейса).ПКМ. После размещения сущности администратор определяет поля для join, настраивает тип соединения, при необходимости задаёт фильтры по сущности и добавляет нужные поля в представление. Все изменения, выполненные в схеме, автоматически отражаются в вкладке «Управление полями» и используются при формировании результирующей выборки для форм, отчётов и диаграмм.