Как добавить формулу расчета?

Как добавить формулу расчета? Какие переменные и конструкции можно использовать в формулах?

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

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

Добавление формулы

Чтобы добавить формулу:

  1. В разделе Администрирование выберите пункт Справочники, откроется список всех справочников.
  2. Выберите из списка справочник Формулы расчета.
  3. Нажмите кнопку Введите новое значение, отобразится строка для добавления новой формулы:
    • Укажите название новой формулы — не более 1000 символов
    • Внесите арифметическую структуру, которая будет рассчитывать данные — допускается ввод цифр, знаков операций . + - * / ( ), а также букв латинского и русского алфавита
  4. Формула будет сохранена автоматически.

Помните, что результатом расчета формулы всегда должно быть число.


Используемые переменные и конструкции

Для задания формул расчета допускаются:

  • Число — вы можете использовать целые и дробные числа. Для обозначения дробной части числа не забудьте указать разделитель «.». Для дробных чисел отображается до 4 знаков после точки включительно.
  • Переменная — переменной является тег, заключенный в фигурные скобки «{}»:
    • Который указан в настройке строки блока
    • Системный тег
  • Выражение:
    • A, -A, A+B, A-B, A*B, A/B, выражения со скобками
    • Вместо A, B могут быть подставлены
      • Числа
      • Переменные
      • Другое выражение, сформированное по указанным правилам
  • Конструкция — название конструкции должно быть обязательно задано латинскими заглавными буквами

Также вы можете указать в конструкции формулы условие IS_NULL, которое позволяет настроить распознавание пустого поля (либо "0", либо пустое), в зависимости от выполняемых арифметических операций и операций сравнения:

  • При добавлении условия IS_NULL в формулу, будет выполняться проверка значения в указанном поле:
    • Если поле пустое, будет выдано значение true
    • Если поле заполнено — false
  • Если поле проверяется по условию IS_NULL, пустое поле не будет распознаваться как "0"
  • Пустое поле должно считаться заполненным значением "0" в следующих случаях:
    • В арифметических операциях:
      • Add = Operator("+")
      • Subtract = Operator("-")
      • Multiply = Operator("*")
      • Divide = Operator("/")
      • Modulo = Operator("%"), % 
      • Power = Operator("^") 
    • В логических операциях:
      • Equal = Operator("=")
      • NotEqual = Operator("<>") 
      • GreaterThan = Operator(">")
      • LessThan = Operator("<")
      • GreaterThanOrEqual = Operator(">=")
      • LessThanOrEqual = Operator("<=")
    • В конструкциях:
      • SUM
      • M_SUM
      • M_MAX
      • M_MIN
      • M_AVERAGE
  • Условие IS_NULL проверяется для следующих типов полей:
    • Гиперссылка
    • Данные
    • Справочник 
    • Текст 
    • Формула расчета 
    • Число 
    • Шаблон номера дела
    • Текстовое расширяемое
    • Объект—Дело
    • Объект—Класс объектов
    • Объект—Документ
    • Объект—Участник
    • Объект—Пользователь

Какие конструкции можно использовать:

  • SUM ({значение1}, {значение2},..):
    • Возвращает сумму числовых значений, указанных в скобках
    • Значения могут быть числами, либо выражениями
  • IF (логическое выражение, значение 1, значение 2):
    • Eсли логическое выражение верно, возвращается значение 1, иначе —значение 2
    • Значения могут быть числами, либо выражениями
  • AND (логическое выражение 1, логическое выражение 2,..):
    • Возвращает true, если истинны все указанные в скобках логические выражения
    • Правила использования:
      • Может быть использовано как подстановка в любое логическое выражение
      • Всегда должно использоваться совместно с IF (подстановка в логическое выражение)
  • OR (логическое выражение 1, логическое выражение 2,..):
    • Возвращает true, если истинно хотя бы одно указанное в скобках логическое выражение
    • Правила использования:
      • Может быть использовано как подстановка в любое логическое выражение
      • Всегда должно использоваться совместно с IF (подстановка в логическое выражение.
  • M_SUM (значение 1):
    • Возвращает сумму числовых значений одного поля во всех мультиблоках и мультистроках в рамках дела
    • В качестве значения подставляется тег поля. При этом поле, указанное в скобках, должно быть в формате Число.
  • M_MAX (значение 1):
    • Возвращает максимум из числовых значений одного поля во всех мультиблоках и мультистроках в рамках дела
    • В качестве значения подставляется тег поля. При этом поле, указанное в скобках, должно быть в формате Число.
  • M_MIN (значение 1):
    • Возвращает минимум из числовых значений одного поля во всех мультиблоках и мультистроках в рамках дела
    • В качестве значения подставляется тег поля. При этом поле, указанное в скобках, должно быть в формате Число.
  • M_AVERAGE (значение 1):
    • Возвращает среднее значение из числовых значений одного поля во всех мультиблоках и мультистроках в рамках дела
    • В качестве значения подставляется тег поля. При этом поле, указанное в скобках, должно быть в формате Число.

Словарь данных представляет собой логическое выражение и имеет формат СxD.

Правила использования:

  • Вместо C и D могут быть подставлены числа, либо переменные полей с типом Число или с типом Справочник
  • Вместо x могут быть подставлены знаки сравнения <, >, <=, >=, =, <>
  • Для переменных полей типа Справочник доступно только сравнение на точное совпадение с введенным текстовым значением (значение для сравнения вводится в кавычках)