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

Ассоциативные модели

Ассоциативные модели доступны с версии 36.1 в режиме beta-версии. Некоторые стандартные возможности могут быть ограничены для ассоциативных моделей и виджетов на их основе.

Ассоциативные модели - строятся на основе логических моделей, ранее загруженных в хранилище системы. Между моделями настраивается связь: один к одному, один ко многим, многие к одному или многие ко многим. Настройка связи позволяет устранить дублирование данных в модели (кроме связи один к одному).

Особенности использования ассоциативных моделей:

  • для создания модели доступны только логические модели, загруженные в хранилище;

  • работа с объектами выполняется без создания SQL-запросов, без объединений JOIN и UNION, без pyton-скриптов и ETL-блоков; 

  • работа со связями блоков между собой выполняется по полям моделей одного типа данных. Поддерживаются следующие типы связей:

    • svg один к одному  - каждой записи одной модели соответствует одна запись другой модели;

    • svg один ко многим - каждой записи одной модели соответсвует несколько записей другой модели;

    • svg многие к одному - нескольким записям одной модели соответствует одна запись другой модели;

    • svg многие ко многим - нескольким записям одной модели соответствует несколько записей другой модели;

  • НЕ доступен экспорт данных в форматы .xlsx и .csv.в виджетах, построенных на основе модели;

  • НЕ поддерживается использование LOD выражений при обработке данных в виджетах, построенных на основе модели;

  • НЕ доступно применение итоговой агрегации (Итоговое значение в настройках поля) в полях виджетов, построенных на основе модели, так как некоторые расчеты могут быть неверными;

  • НЕ доступны ограничения доступа по строкам модели (раздел Правила доступа по кнопке svg);

  • читают данные напрямую из хранилища, не используя модуль ETL;

  • длительная обработка данных на больших объемах, так как построение запроса более сложное и требуется времени для обработки;

  • построение виджета Таблица доступно только в сгруппированном виде - добавлено хотя бы одно поле в блок Группы структуры виджета;

  • визуализация данных выполняется без дополнительной синхронизации с хранилищем.

Добавление ассоциативной модели

Чтобы создать новую ассоциативную модель, в разделе Модели в интерфейсе просмотра списка моделей нажмите на кнопку img Добавить. В выпадающем меню выберите значение Ассоциативную модель. Откроется окно редактирования новой модели, в которую добавьте логические модели.

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

После выполнения этих операций:

  • созданная модель будет сохранена в общем списке доступных пользователю моделей. Так как список упорядочен по убыванию Даты изменения, данная модель будет первой строкой списка;

  • для созданной модели будет присвоено наименование по умолчанию Новая ассоциативная модель. В Системе можно создавать модели с одинаковыми названиями;

  • откроется окно редактирования для созданной модели.

Настройка структуры данных

Конструктор структуры данных позволяет:

  • добавлять логические модели;

  • настраивать связи между моделями;

  • просматривать текущий результат в виде таблицы с описанием столбцов.

Добавление блока выполняется с помощью drag-and-drop - перемещение нужного блока на поле схемы модели.

gif

Для удобства работы и более полного использования экрана можно изменить режим отображения модели. Для увеличения области отображения схемы модели в режиме редактирование модели нажмите кнопку svg Развернуть в правом верхнем углу окна. При разворачивании схемы скрывается область работы с источниками, а также область данных модели. Чтобы вернуть предыдущий режим, нажмите на кнопку svg Свернуть.

gif

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

  • при отсутствии у объекта связей, отобразится окно подтверждения удаления; Чтобы подтвердить действие, нажмите на кнопку img Удалить, для отмены - нажмите на кнопку img Отмена.

    img

  • при наличии у объекта хотя бы одной связи, удаление объекта недоступно. В окне удаления отобразится список созданных пользователем связанных объектов. Нажав на наименование нужного объекта, выполняется переход к объекту в новом окне браузера.

    img

В режиме ручной публикации виджетов при удалении объекта в списке объектов доступен отдельный блок Неопубликованные виджеты.

img

При наличии связи с объектами, созданными другими пользователями при удалении в списке объектов доступен отдельный блок Настроены другими пользователями.

Связи данных моделей

Объединение данных моделей производится с помощью связей блоков:

  • svg один к одному  - каждой записи одной модели соответствует одна запись другой модели;

  • svg один ко многим - каждой записи одной модели соответсвует несколько записей другой модели;

  • svg многие к одному - нескольким записям одной модели соответствует одна запись другой модели;

  • svg многие ко многим - нескольким записям одной модели соответствует несколько записей другой модели;

Для первичной настройки связи кликните по блоку на схеме и нажмите на кнопку svg. Выберите Добавить связь.

img

Форма настройки связей содержит:

img

1.Открывающийся список для выбора объекта модели для установки связи. По умолчанию выбран объект, для которого было выполнено действие Добавить связь. В списке отображаются все объекты модели.

После выбора объекта в открывающемся списке и в блоке Модели, справа отображаются настроенные связи. При отсутствии соединений отображается уведомление Связи отсутствуют.

2.Список объектов модели, с которыми можно настроить связь. После выбора объекта в открывающемся списке, в блоке Модели список фильтруется - отображаются все объекты, кроме выбранного. Выбор объекта для связи выполняется кликом мыши. Для каждого объекта отображается наименование и иконка типа связи, если она была ранее настроена:

img

  • svg один к одному  - каждой записи одной модели соответствует одна запись другой модели;

  • svg один ко многим - каждой записи одной модели соответсвует несколько записей другой модели;

  • svg многие к одному - нескольким записям одной модели соответствует одна запись другой модели;

  • svg многие ко многим - нескольким записям одной модели соответствует несколько записей другой модели;

Доступно изменение ширины блока со списком объектов. Чтобы изменить ширину блок, наведите курсор мыши на вертикальную разделительную линию, зажмите левую кнопку мыши и перетащите линию влево или вправо для установки нужной ширины. Минимальная ширина блока составляет 260px, максимальная 400px.

gif

Cистема запоминает настроенную ширину и состояние блока, при следующем переходе в настройку соединения панель откроется с сохранённой шириной и в последнем использованном состоянии.

3.Блок Добавленные связи отображает настроенные связи выбранной пары объектов.

Рекомендуется устанавливать связь между полями одного типа данных.

Соединения отображаются в табличном виде в следующих столбцах:

  • объект, для которого устанавливается связь. В столбце отображается наименование поля и иконка типа данных:
    • svg - числовое значение;
    • svg - строка;
    • svg - логическое; 
    • svg - дата;
    • svg - иерархия;
  • объект, который выбран для связи. В столбце отображается наименование поля и иконка типа данных:
    • svg - числовое значение;
    • svg - строка;
    • svg - логическое; 
    • svg - дата;
    • svg - иерархия;

При наведении на строку отображается кнопка svg Удалить связь.

4.Блок Доступные поля отображает список полей для обоих выбранных объектов. Блок содержит:

  • кнопку img Добавить связь, которая сохраняет выбранную связку полей в блоке Добавленные связи. Кнопка блокируется после создания связи, для изменения необходимо удалить добавленную связь и создать новую

Рекомендуется устанавливать связь между полями одного типа данных.

  • кнопки img для выбора типа связи:

    • svg один к одному  - каждой записи одной модели соответствует одна запись другой модели;

    • svg один ко многим - каждой записи одной модели соответсвует несколько записей другой модели;

    • svg многие к одному - нескольким записям одной модели соответствует одна запись другой модели;

    • svg многие ко многим - нескольким записям одной модели соответствует несколько записей другой модели;

Каждый блок полей объекта содержит:

  • Поиск - поиск по алиасу поля модели;
  • svg Дополнительные параметры - отображает строку с фильтрами по типам полей:

    • svg - число;
    • svg - строка;
    • svg - логическое; 
    • svg - дата;
    • svg - иерархия;  При выборе фильтра кнопка меняет цвет.
  • сортировка полей по алиасу. По нажатию на кнопку меняется направление сортировки: svg по возрастанию А-Я - значение по умолчанию или svg по убыванию Я-А.

  • список полей. Для каждого поля отображается img флажок для выбора поля, алиас поля, наименование в скобках и иконка типа данных:
    • svg - число;
    • svg - строка;
    • svg - логическое; 
    • svg - дата;
    • svg - иерархия;

Для изменения связи, нажмите левой кнопкой мыши на пиктограмму связи на схеме и выберите Редактировать. Окно редактирования связи аналогично окну добавления.

img

Для удаления связи, наведите курсор мыши на линию связи на схеме и нажмите кнопку svg Удалить связь.

img

Обновление структуры объектов

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

Способы обновления структуры объектов:

  • массовое обновление по кнопке img Обновить структуру на схеме модели;

    img

  • для индивидуального обновления - с помощью пункта Обновить в контекстном меню объекта схемы модели.

    img

В объектах, в которые были добавлены новые поля, в режиме редактирования будет отображаться кнопка svg Обновить таблицу. Это значит, что структура таблицы на данный момент неактуальна и ее необходимо обновить. Данная кнопка отображается после сбора статистики, не чаще чем раз в шесть часов.

img

Система сбора статистики определяет наличие "битых" объектов в моделях. "Битый" - объект с измененной структурой в источнике. Такой объект помечается пиктограммой svg. На основе отметок определяется необходимость обновления структуры данных объектов схемы.

Объект считается "битым" в следующих случаях:

  • таблица была удалена из источника;

  • поле таблицы было удалено из источника;

  • у поля таблицы изменился тип в источнике;

  • источник не отвечал в момент анализа объектов.

Редактирование ассоциативной модели

Операции и возможности редактирования одинаковы как для новой модели, так и для существующих (созданных ранее). Переход в режим редактирования модели можно выполнить:

  • сразу после создания новой модели - открывается форма редактирования;

  • из реестра объектов в разделе Модели:

    • в табличном представлении объектов в строке модели нажмите на svg и далее Редактировать;

    • отметьте img флажком одну модель и нажмите на кнопку img Редактировать.

  • из режима просмотра модели по кнопке img Редактировать.

При переходе к редактированию модели, к которому у пользователя нет доступа на редактирование отобразится Модель недоступна. Отсутствуют права на редактирование модели.

img

Интерфейс редактирования модели содержит следующие элементы:

1.Иконка типа модели svg и наименование модели с возможностью его редактирования.

2.Панель кнопок управления:

  • img Создать виджет - при нажатии на кнопку откроется окно виджета в режиме редактирования; 

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

  • img Клонировать - для создания копии данной модели;

Клонирование модели может быть заблокировано, если квоты на создание моделей закончились. Количество квот определяется лицензией с ограничениями по количеству активных объектов.

  • img Удалить - для удаления данной модели;

  • svg Настройка - переход к настройкам доступа данной модели;

3.Область источников данных модели:

  • источники модели: Модели. Для каждой модели отображается иконка типа модели, наименование а также при наведении кнопка svg для удаления модели из структуры ассоциативной модели. Все поля модели источника передаются с реализованными настройками: алиасы полей, настроенные свойства Скрыто, Является справочникомЯвляется ссылкой.

  • svg добавление модели источника - добавить выбрать загруженную в хранилище модель как источник данных;

  • поле Поиск для фильтрации моделей источников;

  • кнопка svg Свернуть для сворачивания блока источников. Для разворачивания блока необходимо нажать на кнопку img Источники.

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

Доступно изменение ширины блока. Ширина блока сохраняется при дальнейшем редактировании.

4.Область настройки схемы данных модели.

Доступно изменение ширины блока. Ширина блока сохраняется при дальнейшем редактировании.

Вкладка Схема содержит:

  • панель кнопок для работы со схемой модели:

    • img Обновить структуру - обновление структуры таблицы на схеме;
    • svg Развернуть / svg Свернуть - увеличение или уменьшение области схемы связей;

    gif

  • схема связи исходных данных модели;

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

Доступно изменение ширины блока. Ширина блока сохраняется при дальнейшем редактировании.

Блок содержит:

  • img Обновить - обновление данных;

  • режимы отображения svg Описание столбцов - отображается описание столбцов модели, при котором для каждого столбца доступны параметры:

    • Наименование - неизменяемое, поступающее из источника;

    • Наименование в модели - наименование, для использования в вычисляемых полях или при создании SQL - запроса.

    • Алиас - псевдоним столбца, присвоенный пользователем и отображаемый далее в виджетах;

    • Таблица - название блока данных в составе модели, откуда данный столбец добавлен в модель;

    • Псевдоним таблицы - псевдоним блока данных в составе модели, откуда данный столбец добавлен в модель;

    • Скрыто - свойство поля, которое позволяет скрыть столбец в модели;

    • Является справочником - свойство поля, которое позволяет сформировать набор уникальных значений поля. В фильтрах виджетов будет доступен выбор значений из списка;

    Свойство Является справочником недоступно для полей с типом данных Дата и Число (дробное).

    • Отвечает за геолокацию - свойство поля, которое позволяет использовать поле для определения местоположения в гео-виджете. Возможные типы полей: Точки (Геоточки);

    Свойство Отвечает за геолокацию доступно для полей только с типом данных Строка и с неактивным свойством Является ссылкой или Является справочником.

    • Является ссылкой - свойство поля, которое позволяет отобразить значения поля ссылкой. В виджетах поле будет визуально отличаться от основного текста и будет содержать ссылку для перехода на другую страницу;

    • Тип - тип данных столбца.

    img

Клонирование ассоциативной модели

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

При выполнении клонирования из исходной модели:

  • копируются все настройки, так что модель-клон имеет абсолютно такой же вид и структуру;

  • НЕ копируются установленные разрешения доступа - все дальнейшие операции с клоном разрешены только для пользователя-создателя;

  • в список моделей будет добавлена новая модель с названием модели-источника и припиской (клон);

  • автоматически откроется окно просмотра клонированной модели.

Клонирование модели можно выполнить нажав кнопку img Клонировать в режиме просмотра или редактирования модели. Функция клонирования также доступна из реестра объектов моделей:

  • через выпадающий список кнопок для выполнения действий над моделью - в табличном представлении объектов в рамках модели нажмите на svg и выберите действие Клонировать;

  • через панель для выполнения действий над выбранными моделями - отметьте img флажком модель и нажмите на кнопку img Клонировать.

Клонирование модели может быть заблокировано, если квоты на создание моделей закончились. Количество квот определяется лицензией с ограничениями по количеству активных объектов.

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

img

Удаление ассоциативной модели

Удалить модель можно при наличии у пользователя такого права в отношении данной модели. Чтобы удалить модель, выполните одно из действий:

  • на форме просмотра или редактирования модели нажмите на кнопку img Удалить;

  • в реестре объектов моделей в табличном представлении объектов в рамках модели нажмите на svg и далее на Удалить;

  • в реестре объектов моделей отметьте img флажком модель и в появившейся панели нажмите на кнопку img Удалить.

После нажатия на кнопку Удалить появится окно удаления для подтверждения действия. Чтобы подтвердить действие, нажмите на кнопку img Удалить, для отмены - нажмите на кнопку img Отмена.

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

  • при отсутствии у модели связанных объектов отобразится окно подтверждения удаления;

img

  • при наличии у модели хотя бы одного связанного объекта, созданного текущим пользователем, отобразится окно подтверждения удаления. В окне удаления отобразится список созданных пользователем связанных объектов. Опция img С содержимым позволяет удалить созданные пользователем связанные объекты. Нажав на наименование нужного объекта, выполняется переход к объекту в новом окне браузера:

img

Если для модели созданы связанные объекты другими пользователями, то при удалении отобразится количество таких объектов в блоке Настроены другими пользователями. Объекты созданные другими пользователями не удалятся даже с включенной опцией С содержимым.

img

В режиме ручной публикации виджетов при удалении модели в списке объектов доступен отдельный блок Неопубликованные виджеты.

img

При удалении модели удаляется и настроенный на ней планировщик.

Чтобы массово удалить модели, отметьте img флажком нужные объекты в реестре объектов и на появившейся панели нажмите на кнопку img Удалить. Чтобы подтвердить действие, нажмите на кнопку img Удалить, для отмены - нажмите на кнопку img Отмена.

Создание виджета из ассоциативной модели

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

  • в окне просмотра или редактирования модели, нажмите на кнопку img Создать виджет;

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

  • в списке Модели, установите img флажок в строке модели, нажмите на кнопку img Добавить и выберите из выпадающего списка:
    • Добавить в новый виджет - создать новый виджет на основе данной модели;
    • Добавить в сущ. виджет - добавить данные модели в уже существующий виджет;

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

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