Вычисление количества дней в шаблонах

С помощью функции calc() можно прямо в шаблоне рассчитать разницу между датами — например, сколько дней осталось до закрытия сделки.

Как это работает

Даты в системе доступны в двух форматах: отформатированная строка (d_close) и Unix-timestamp в секундах (d_close_seconds). Для арифметики нужны именно секунды — разницу делим на 86 400 (секунд в сутках).

Метки дат

${deals.d_close_seconds} — дата закрытия сделки в секундах
${system.timestamp} — текущая дата и время в секундах

Примеры

Дробное число дней (например: 3.47):
calc((${deals.d_close_seconds} - ${system.timestamp}) / 86400)

Целое число с округлением (например: 3):
calc(round((${deals.d_close_seconds} - ${system.timestamp}) / 86400))

Целое число, отбросить остаток (например: 3, не 4):
calc(floor((${deals.d_close_seconds} - ${system.timestamp}) / 86400))

Всегда положительное значение, без учёта просрочки:
calc(abs(round((${deals.d_close_seconds} - ${system.timestamp}) / 86400)))

Если просрочено — показать 0:
calc(if(${deals.d_close_seconds} > ${system.timestamp}, round((${deals.d_close_seconds} - ${system.timestamp}) / 86400), 0))

Знак результата

Положительный — дата закрытия ещё не наступила, столько дней осталось.
Отрицательный — дата закрытия прошла, столько дней просрочки.

Функция calc() работает в шаблонах форматов Word, Excel, HTML, в полях типа текст и триггерах.
Поддерживаются функции: round, floor, ceil, abs, if и другие математические операции.
В WireCRM легко вести учет клиентов и продаж, работать с финансами и складом, создавать документы по шаблону. Первые 14 дней бесплатны для всех новых пользователей. Изучите возможности сервиса, ведите учет клиентов и пользуйтесь поддержкой наших специалистов!

Создать аккаунт

Комментарии