Работа с вычисляемыми полями¶
В таблицу данных модели можно добавить новый столбец, вычисляемый по математической формуле на основе значений других столбцов модели - вычисляемое поле.
Добавление вычисляемых полей¶
Добавить вычисляемое поле можно одним из способов:
- нажмите на кнопку
Вычисляемое поле на панели кнопок в области просмотра данных модели. Откроется форма добавления поля.
Окно добавления поля содержит:
-
на вкладке Описание:
-
Алиас - наименование поля в том виде, в каком оно будет отображаться в пользовательском интерфейсе окон (можно использовать кириллицу и пробелы). Обязательно для заполнения;
-
Наименование - краткое наименование поля (латинскими буквами, цифрами 0-9 и символом _, одним словом, без пробелов), которое может быть использовано в формулах и фильтрах. Значение при сохранении приводится к нижнему регистру. Обязательно для заполнения;
-
Значение - формула, с использованием операторов нотации языка Spark SQL, в качестве переменных используйте наименования других столбцов данной строки. Названия столбцов должны содержать префикс, включающий:
- название таблицы в базе данных-источнике;
- название и номер листа, если поле из источника excel-файла, например,
List1
; Jsql.
- для поля из SQL запроса;
В поле ввода SQL-запроса при вводе первых букв отображаются значения справочников (IntelliSense) и подсветка синтаксиса. Справочники реализованы по полям модели, ключевым словам (select, from и др.), алиасам, таблицам. При выборе алиаса в выпадающем списке в формуле указывается код выбранного поля для корректной работы запроса. При выборе листов или таблиц файловых источников в выпадающем списке в запросе прописывается его название в обратных кавычках для корректной работы запроса.
-
Тип - выбор типа данных:
Логическое
;Дата
;Число (дробное)
;Число (целое)
;Строка
;
-
Единицы измерения - строка для указания единицы измерения. Если значение поля пусто, то единицы измерения не отображаются;
-
Число знаков после запятой;
-
Разделитель дробной части;
-
Разделитель тысяч;
Поля Единицы измерения, Число знаков после запятой, Разделитель дробной части и Разделитель тысяч доступны для типа данных
Число (дробное)
.Поля Единицы измерения и Разделитель тысяч доступны для типа данных
Число (целое)
.- Формат - поле выбора формата даты или даты и времени.
Поле Формат доступно для типа данных
Дата
. -
-
на вкладке Параметры задайте:
-
Базовый цвет - при нажатии открывается окно с палитрой цветов. Доступны два способа выбора цвета:
-
Простая
- позволяет быстро выбрать цвет форматирования из представленных базовых цветов. Первый блок - набор из базовых цветов (не выбираются для форматирования, но нужны для смены цветов тональности во втором блоке). Второй блок - набор тональности базового цвета, который состоит из цветов градиента (выбираются для форматирования - заливки поля, удовлетворяющего заданному условию); -
Расширенная
- позволяет выбрать цвет из палитры, также есть возможность указать цвет с помощью его HEX, RGBA или HSLA кода.
-
-
Итоговая агрегация:
Количество
- количество значений;Количество уникальных
- количество уникальных значений;Минимум
- минимальное среди значений;Максимум
- максимальное среди значений;
-
Промежуточная агрегация:
Количество
- количество значений;Количество уникальных
- количество уникальных значений;Минимум
- минимальное среди значений;Максимум
- максимальное среди значений;
-
Выравнивание текста:
По центру
;По левому краю
;По правому краю
;
-
Является справочником - свойство поля, которое позволяет сформировать набор уникальных значений поля. В фильтрах виджетов будет доступен выбор значений из списка;
Свойство Является справочником недоступно для полей с типом данных
Дата
иЧисло (дробное)
.-
Является ссылкой - свойство поля, которое позволяет отобразить значения поля ссылкой. В виджетах поле будет визуально отличаться от основного текста и будет содержать ссылку для перехода на другую страницу:
Ссылка
- все значения поля ссылки;Текст
- поле ввода текста, который будет указан как ссылки;Значение
- выбор поля, значения которого будут указаны как наименования ссылки.
-
Скрыто - свойство поля, которое позволяет скрыть столбец в модели.
-
Нажмите на кнопку Сохранить, вычисляемое поле с заданными параметрами отобразится в таблице модели.
Пример создания вычисляемого поля
Вычисляемое поле выполняет расчет процентного отношения двух других полей модели, а в случае превышения значения 100% устанавливает значение - 100.
В поле Значение используется формула:
CASE
WHEN (jsql.kolicestvo_20 >=List1.kolicestvo_obektov_v_reestre) THEN 100
ELSE 100 * jsql.kolicestvo_20 / List1.kolicestvo_obektov_v_reestre
END
где:
-
jsql.kolicestvo_20 - поле числовых значений количества из SQL запроса к источнику типа База данных;
-
List1.kolicestvo_obektov_v_reestre - поле числовых значений количества из другого источника - Excel-файла.
Редактирование вычисляемых полей¶
Для перехода к редактированию ранее созданного вычисляемого поля выполните одно из действий:
- в области просмотра данных модели нажмите на кнопку контекстного меню действий
рядом с наименованием выбранного поля. В открывшемся выпадающем списке выберите пункт Редактировать;
- в режиме редактирования модели в левой части окна в блоке Вычисляемые поля наведите курсор мыши на наименование необходимого вычисляемого поля и нажмите на кнопку
. В выпадающем списке выберите пункт Редактировать.
Окно редактирования вычисляемого поля аналогично окну его добавления. Внесите изменения и нажмите на кнопку Сохранить.
Удаление вычисляемых полей¶
Для удаления вычисляемого поля выполните одну из последовательностей действий:
- в области просмотра данных модели нажмите на кнопку контекстного меню действий
рядом с наименованием выбранного столбца. В открывшемся выпадающем списке выберите пункт Удалить;
- в режиме редактирования модели в левой части окна в блоке Вычисляемые поля наведите курсор мыши на наименование необходимого вычисляемого поля и нажмите на кнопку
. В выпадающем списке выберите пункт Удалить.
Откроется окно для подтверждения удаления вычисляемого поля.
Чтобы подтвердить действие, нажмите на кнопку Удалить, для отмены - нажмите на кнопку
Отмена.
Если вычисляемое поле используется в виджете или поле выбрано для создания системного виджета в информационной панели, то при удалении поля открывается уведомление о невозможности выполнения действия. В уведомлении отображается список связанных объектов.
В режиме ручной публикации виджетов при удалении поля в списке объектов доступен отдельный блок с неопубликованными виджетами.
Клонирование вычисляемых полей¶
Чтобы клонировать ранее созданное вычисляемое поле в режиме редактирования модели в левой части окна в блоке Вычисляемые поля наведите курсор мыши на наименование необходимого вычисляемого поля и нажмите на кнопку . В открывшемся выпадающем списке выберите значение Клонировать.
Интерфейс клонирования вычисляемого поля аналогичен интерфейсу его добавления. В открывшемся окне клонирования вычисляемого поля все поля заполнены. К полю Наименование по умолчанию приписано _copy
. Остальные поля клонируются без изменений.
Чтобы сохранить изменения, нажмите кнопку Сохранить. Окно клонирования вычисляемого поля закроется - в списке вычисляемых полей и в таблице модели появится клон вычисляемого поля. Чтобы отменить клонирование вычисляемого поля, нажмите кнопку
Отменить.
Особенности функций¶
AWCastInterval¶
Данная функция возвращает количество времени time, прошедшее между датами date1 и date2. Параметр time может возвращать:
- ms - миллисекунды;
- sec - секунды;
- hours - часы;
- days - дни;
TO_DATE¶
Данная функция приводит строку date к типу данных дата в заданном формате format.