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

Раздел “Представления”

Раздел предназначен для создания, импорта, экспорта, редактирования, отладки и просмотра представлений.

Список представлений находится в левой части раздела и содержит фильтр для поиска по названию.

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

Кнопки
Описание
Обновить все представления (считать данные из базы)
Создать новое представление
Удалить выбранное представление
Сохранить выбранное представление
Сохранить всё
Импорт представлений
Экспорт представлений
Переход в режим редактирования представления
Переход в режим отладки представления
Переход в режим просмотра представления
Переход на вкладку настроек прав доступа

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

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

Название поля
Описание
Алиас Название представления, которое будет отображаться в списке представлений, а также будет использоваться в настройке карточек (в связи с этим алиас не желательно менять в дальнейшем)
Имя Имя, которое будет задаваться по умолчанию на рабочих местах пользователей
Группа Название группы для логической группировки списка представлений в Tessa Admin
Описание Описание представления
Метаданные Редактор свойств представления
MSSQL запрос Код для формирования запроса, который будет получать данные для представления из базы данных MSSQL
PostgreSQL запрос Код для формирования запроса, который будет получать данные для представления из базы данных PostgreSQL

Также возможна смена режима редактирования метаданных представления с помощью переключателя Редактор JSON . Доступно два типа редакторов: редактор чистого json и редактор в виде карточки.

После редактирования представления его необходимо сохранить и затем проверить в режиме просмотра.

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

Tip

Поля MSSQL запрос и PostgreSQL запрос поддерживают сочетание клавиш Ctrl+Space, вызывающее контекстное меню, из которого можно выбрать и вставить в текст шаблоны стандартных грамматических конструкций.

Note

Подробнее о написании представлений в Руководстве разработчика.

Экспорт представлений

Для экспорта представления можно воспользоваться кнопкой .

Будет открыт диалог, который содержит следующие настройки:

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

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

Импорт представлений

Для импорта представлений можно воспользоваться кнопкой .

Будет открыт диалог, который содержит следующие настройки:

  • Папка - в этом поле необходимо указать путь к папке, из которой надо импортировать файлы представлений, ее можно выбрать с помощью кнопки .
  • Удалить перед импортом все представления из базы данных - если флаг проставлен, то перед импортом все представления в системе будут удалены. Таким образом, после импорта в системе будут содержаться только импортированные представления.
  • Заменить разрешения в базе данных - если флаг проставлен, то разрешения (роли) после импорта будут такими же, как в файлах. Иначе для существующих в базе данных представлений разрешения не будут изменены. Если флаг не проставлен и импортируемое представление отсутствует в базе данных, то после импорта его разрешения не будут заданы, т.е. представление будет доступно только администраторам.

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

Настройка доступа к представлениям

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

Important

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

Note

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

Представление - это источник данных. Оно может использоваться в рабочих местах, в режиме отбора, в расширениях, в прямом обращении к веб-сервисам в пределах сессии определённого сотрудника.

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

Если все сотрудники могут выбирать данные из этого представления, то в списке ролей должна быть роль Все сотрудники. То, где и как пользователи выбирают данные, способ получения этих данных, уже не имеет отношения к безопасности. Раз пользователь выбирает данные, то он имеет к ним доступ, может их посмотреть и скопировать. Единственный способ ограничить набор данных, который видит пользователь, имеющий доступ к представлению - это фильтровать выборку с использованием параметра CurrentUserID непосредственно на сервере.

Back to top