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

Синтаксис формул

Синтаксис формул похож на SQL.

Простые выражения могут быть описаны с помощью обычных арифметических действий.

([field_1] - [field_2])

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

CONCAT  (
        SUM ([field_1] / [field_2], ' %')
        )

Синтаксис формул применяется для расчетных агрегатов, расчетных переменных и SQL-фильтрации виджетов.

Основные правила по соблюдению синтаксиса:

В поле ввода SQL-скрипта при вводе первых букв отображаются значения справочников (IntelliSense) и подсветка синтаксиса. Справочники реализованы по полям модели, ключевым словам (select, from и др.), алиасам. При выборе алиаса в выпадающем списке в формуле указывается код выбранного поля для корректной работы запроса.

  • Формула может быть записана в одну строку или в несколько строк.
SUM (
      [field_1] / [field_2],
       ' %'
    )
  • Имена полей указываются в квадратных скобках.
[field]

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

  • Аргументы функций указываются в круглых скобках и разделяются запятой.
 SUM ([field_1], [field_2])
  • Одинарные кавычки перменнных в формулах указываются с экранированием символом \.
CASE [field]
    WHEN 'Значение \'пустой\' для поля'
    THEN 100
    ELSE 0
END
  • В выражениях могут участвовать константы разных типов данных:

    • число (целое): 23-4325653;
    • число (дробное), разделитель точка (.): 0.0234-1.0;
    • дата или дата и время: 2019-01-23, 2019-01-23 15:07:47;
    • строка: Строка;
    • логический: TRUE, 1FALSE, 0;
  • В выражениях могут участвовать операторы:

    • арифметические: +-*/;
    • возведение в степень: ^;
    • остаток от деления: %;
    • логические: ANDORNOTINLIKEIS TRUEIS FALSEBETWEEN;
  • сравнения: =!= (не равно), <<=>>=;

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

-- Комментарий

/* Комментарий_1
Комментарий_2 */

Основным компонентом формул являются функции, которые позволяют выполнять различные операции над данными виджета.