Меньше полей — сложнее формулы

Можно по-разному использовать формулы. Их можно делать большими и сложными, при этом используя минимум полей. А можно создавать маленькие и простые формулы, но используя при этом дополнительные поля, для хранения промежуточных вычислений. Дополнительные поля не обязательно показывать на карточке.

Простые формулы

Возьмем для примера следующую карточку продажи.

На ней имеются три поля с формулами. Формулы достаточно просты, чтобы в случае ошибки легко найти ее.

Сложные формулы

Вам может показаться, что поле Стоимость на карточке лишнее и вы захотите его убрать. И тут у вас два варианта:

  • Просто убрать поле с карточки. При этом функции все равно будут работать, ведь для этого не обязательно иметь все поля с формулами на карточке.
  • Удалить поле объекта и изменить формулу для поля Стоимость со скидкой.

Рассмотрим второй вариант. Удалим поле Стоимость с карточки и из объекта:

Формула для поля Стоимость со скидкой будет теперь следующая:

Как видите, вместо поля Стоимость (оно использовалось в формуле два раза) теперь дополнительное вычисление Цена * Количество. Формула стала заметно сложнее и искать ошибку в ней станет труднее.

Много полей или сложные формулы

Для принятия решения о том, нужны ли промежуточные поля и стоит ли усложнять формулы имейте ввиду следующее:

  • Простые формулы проще отлаживать.
  • Промежуточные поля округляют значения. Иногда это нужно, а иногда нет.
  • Промежуточные поля не обязательно показывать на карточке.
  • Удалить промежуточные поля всегда можно, но если их добавить позже, то в старых данных промежуточные поля будут пустые.
  • Некоторые поля добавлять очень даже рекомендуется. Например, поле Цена, в которое копируется цена из справочника продуктов. Если вы не добавите это поле в объект продажи, то не узнаете какая цена была в данной продаже. Кроме того, при изменении количества или скидки данная карточка пересчитается по текущей цене.