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

Форма создания содержит в себе поля наименования и описание представления, а также:
Шаблон заголовка - это имя данных представления, которое может использоваться при настройке фильтров, сортировки или др.
Задает графическое отображение данных, которые могут быть представлены в виде:
Чекбокс строгий режим обеспечивает автопроверку взаимосвязи типов материалов между собой. Таким образом, если галочка строгий режим активирована - пользователь может добавить в представление поля только одного типа материала или связанных с ним через поле типа связь.
Если одной записи в левой таблице соответствует несколько значений в правой таблице, то в представлениие будут включены все комбинации этих значений.
Например, если у нас есть таблица "Заказы" с заказами и таблица "Товар" с товарами в заказах, и один заказ может содержать несколько товаров, то для каждого товара будет создана отдельная строка, содержащая информацию о заказе и соответствующем товаре.

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

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

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

Атрибут - это системные поля, данные в которых автоматически заполняются и сохраняются в системе вне зависимости от того, выводит их пользователь или нет. Таким образом, поля атрибут дают возможность вывести в представление системные данные о контенте, процессе или задаче.
Атрибут может быть атрибутом контента, атрибутом процесса или атрибутом задачи.
Выражение.
Поле типа выражение позволяет производить операции над данными:
1. Операции над строковыми значениями:
Вывод текста 'текст'
|| Конкатенация (объединение) строк`:
'Postgre' || 'SQL' -> PostgreSQL
Проверка эквивалентности значений =
Проверка неравенства значений <> или !=
Соответствие шаблону с с подстановочными знаками (% and _) LIKE
Версия LIKE без учета регистра ILIKE
Проверка соответствия шаблону регулярного выражения SQL SIMILAR TO
Проверка соответствия шаблону регулярного выражения POSIX ~
Версия ~ без учета регистра ~*
Не соответствует шаблону регулярного выражения POSIX !~
Версия !~ без учета регистра !~*
При осуществлении операций над строковыми значениями поля приводятся к текстовому формату:
Машинное имя::text
2. Операции над числовыми значениями
Сложение +
Вычитание -
Умножение *
Деление /
Меньше, чем <
Больше, чем >
Меньше или равно <=
Больше или равно >=
Проверка эквивалентности значений =
Проверка неравенства значений <> или !=
При осуществлении операций над числовыми данными поля приводятся к числовому формату:
Машинное имя::int
Диапазон предельных значений формата integer (231-1), то есть от −2 147 483 648 до 2 147 483 647.
Если операции над данными, которые производятся в выражении представления, подразумевают получение значений, превышающих указанный диапазон, используется приведение к формату:Машинное имя::BIGINT
3. Условия
Условия вывода полей прописываются оператором CASE, который позволяет выполнять различные действия в зависимости от условий:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
где:
Выводимые в поле данные могут быть округлены до определенного знака после запятой с помощью функции ROUND:
ROUND(expression, [decimal_places])
где:
Все условия должны возвращать один тип данных, так приведение значений к одному формату, например, число - int, является обязательным.
4. Логические операторы
IS NULL проверяет, является ли значение NULLIS NOT NULL проверяет, не является ли значение NULLIS TRUE проверяет, является ли значение TRUEIS NOT TRUE проверяет, не является ли значение TRUEIS FALSE проверяет, является ли значение FALSE IS FALSEIS NOT FALSE проверяет, не является ли значение FALSE IS NOT FALSE5. Операторы сравнения
IN используется для фильтрации результатов на основе списка значенийNOT IN используется для исключения результатов, соответствующих значениям в спискеBETWEEN используется для фильтрации набора результатов в определенном диапазоне. Значения могут быть числами, текстом или датами.NOT BETWEEN используется для фильтрации набора результатов за пределами определенного диапазона.6. Функция TO_DATE()
Для использования в выражениях дат - необходимо осуществить приведение к формату дата:
Функция TO_DATE() преобразует строковый литерал в значение даты и принимает два строковых аргумента:
TO_DATE(text,format);
text: входная строка, которую вы хотите преобразовать в дату.
format: определяет формат входной строки.
| Шаблон | Описание |
|---|---|
| Y,YYY | Год из 4 цифр с запятой |
| YYYY | Год из 4 цифр |
| YYY | Последние 2 цифры года |
| YY | Последняя цифра года |
| IYYY | Недельный год по ISO 8601 (4 или более цифр) |
| IYY | Последние 2 цифры недельного года по ISO 8601 |
| IY | Последняя цифра недельного года по ISO 8601 |
| I | Сокращенное название месяца с заглавной буквы, например, январь, февраль и т. д. |
| BC, bc, AD or ad | Индикатор эпохи без периодов |
| B.C., b.c., A.D. ora.d. | Индикатор эпохи с периодом |
| MONTH | Английское название месяца в верхнем регистре |
| Month | Полное название месяца на английском языке с заглавной буквы |
| month | Полное название месяца на английском языке строчными буквами |
| MON | Сокращенное название месяца в верхнем регистре, например JAN, FEB и т. д. |
| Mon | Номер недели года (1–53) (первая неделя начинается в первый день года) |
| mon | Сокращенное название месяца строчными буквами, например, январь, февраль и т. д. |
| MM | Номер месяца от 01 до 12 |
| DAY Full | Название дня в верхнем регистре |
| Day Full | Название дня с заглавной буквы |
| day Full | Название дня строчными буквами |
| DY | Сокращенное название дня в верхнем регистре |
| Dy | Сокращенное название дня с заглавной буквы |
| dy | Сокращенное название дня строчными буквами |
| DDD | День года (001-366) |
| IDDD | День года с нумерацией недели по ISO 8601 (001–371; первый день года — понедельник первой недели ISO) |
| DD | День месяца (01-31) |
| D | День недели: с воскресенья (1) по субботу (7) |
| ID | День недели по ISO 8601: с понедельника (1) по воскресенье (7) |
| W | Неделя месяца (1–5) (первая неделя начинается в первый день месяца) |
| WW | Век, например, 21, 22 и т. д. |
| IW | Номер недели в формате нумерации недель ISO 8601 (01–53; первый четверг года приходится на неделю 1) |
| CC | Век, например, 21, 22 и т. д. |
| J | Юлианский день (целое число дней с 24 ноября 4714 г. до н.э. в полночь по всемирному координированному времени) |
| RM | Месяц прописными римскими цифрами (I-XII; I=январь) |
| rm | Месяц строчными римскими цифрами (i-xii; i=январь) |
Множественное добавление осуществляется с помощью кнопки, отмеченной на рисунке снизу:

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