Если формула написана корректно, то результат можно проверить на нужный выводимый результат. Если формула содержит ошибку, то будет описана ошибка и гореть красным.
IF(lead.cf2802899=="100","Привет","Пока")
//Ниже предоставлен описания функции в виде кода
IF(logical_expression, value_if_true, value_if_false)
CURRENCY(USD)*lead.sale
//Ниже предоставлен описания функции в виде кода
CURRENCY(code)
ROUND(lead.cf2802899, 2)
//Ниже предоставлен описания функции в виде кода
ROUND(value, [places])
CLEARNUMBER(lead.cf2802903) * lead.cf2802901
//Ниже предоставлен описания функции в виде кода
CLEARNUMBER(value)
//Ниже предоставлен описания функции в виде кода
REGEXPMATCH(pattern, string)
//Пример использования
REGEXPMATCH((пять),lead.cf1012195)[0]
SFITEMNAME(lead.cf1074727,10049)
//10049 - ID каталога
//Ниже предоставлен описания функции в виде кода
SFITEMNAME(superField, catalogID)
ADD — Возвращает сумму двух чисел. Эквивалентно оператору "+".
Работает только с двумя полями, не более.
ADD(lead.cf2802899,lead.cf2802901)
//Ниже предоставлен описания функции в виде кода
ADD(value1, value2)
MINUS — Возвращает разницу двух чисел. Эквивалентно оператору "-".
Работает только с двумя полями, не более.
MULTIPLY(lead.cf2802899,lead.cf2802901)
//Ниже предоставлен описания функции в виде кода
MULTIPLY(value1, value2)
MULTIPLY — Возвращает произведение двух чисел. Эквивалентно оператору "*".
Работает только с двумя полями, не более.
MULTIPLY(lead.cf2802899,lead.cf2802901)
//Ниже предоставлен описания функции в виде кода
MULTIPLY(value1, value2)
DIVIDE — Возвращает одно число, разделенное на другое. Эквивалентно оператору "/".
Работает только с двумя полями, не более.
DIVIDE(lead.cf2802899,lead.cf2802901)
//Ниже предоставлен описания функции в виде кода
DIVIDE(value1, value2)
ISEMPTY — Определяет, является ли указанное значение пустым значением.
// Если поле cf1012243 не заполнено, то вернет 100, если не пустое (иначе),
//то 200
IF(ISEMPTY (lead.cf1012243), 100,200)
// Если поле cf1012243 пустое, то вернет 200, иначе 100
IF(ISEMPTY (lead.cf1012243) == false, 100,200)
//Ниже предоставлен описания функции в виде кода
ISEMPTY(expression)
NUMBER — Преобразовывает переданное значение в числовой формат.
//Ниже предоставлен описания функции в виде кода
NUMBER(value)
TXT — Преобразует предоставленное значение в текстовое значение.
//Ниже предоставлен описания функции в виде кода
TXT(value)
CURRENCYFORMAT — Форматирует число в валютный формат. Данный момент поддерживает только USD и RUB.
//Ниже предоставлен описания функции в виде кода
CURRENCYFORMAT(value, format)
DIFFDATE — Вычисляет количество дней, недель или месяцев между двумя датами.
//Ниже предоставлен описания функции в виде кода
DIFFDATE(start_date, end_date, unit, floating = false)
DATEUNIX — Конвертирует дату в unix формат.
//Ниже предоставлен описания функции в виде кода
DATEUNIX(date)
DIFFFULLDATE — Возвращает разницу между двумя датами. Принимает 2 аргумента. Если второй аргумент пустой, то сравниться с текущей датой.
//Ниже предоставлен описания функции в виде кода
DIFFFULLDATE(date1, [date2])
INMULTI — Проверить выбран ли какой то элемент в мульти списке. Например INMULTI("lead.cf542312", lead.cf542312, " Кроссовки").
//Ниже предоставлен описания функции в виде кода
INMULTI(key, value, string)
EXISTVAL — Проверит выбрано ли данное значение или нет. Принимает два значения строку поиска и значения. Возвращает булево значение.
//Ниже предоставлен описания функции в виде кода
INMULTI(key, value, string)
NOTIFY — Выводит системное оповещение.
//Ниже предоставлен описания функции в виде кода
NOTIFY(text)
CMD — Выполняет команду и возвращает результат переданный вторым аргументом.
//Ниже предоставлен описания функции в виде кода
CMD(expression, value)
AREA — Возвращает область инициализации скрипта.
//Ниже предоставлен описания функции в виде кода
AREA()
STOP — Останавливает скрипт, кидая исключение. Дальше формула не будет выполняться и устанавливать результат.
//Ниже предоставлен описания функции в виде кода
STOP()
STREXIST — Проверит строку в тексте на наличие.
//Ниже предоставлен описания функции в виде кода
STREXIST(pattern, text)
MAX — Возвращает максимальное значение в массиве.
//Ниже предоставлен описания функции в виде кода
values
DATEFORMAT — Конвертирует дату из Unix timestamp в указанный формат. При передаче формата - 'default' примет формат указанный на данный аккаунт.
//Ниже предоставлен описания функции в виде кода
DATEFORMAT(unix, format)
NOW — Возвращает Unix Timestamp.
//Ниже предоставлен описания функции в виде кода
NOW()
GETLEADCATALOG — Возвращает массив товаров сделки по его ID индикатору, получения количества товаров необходимо передать так же и ид каталога списка Товары.
//Ниже предоставлен описания функции в виде кода
GETLEADCATALOG(lead_id, catalog_id)
CEIL — Округляет число в большую сторону.
//Ниже предоставлен описания функции в виде кода
CEIL(value)
SUBDATE — Добавляет определенное количество дней или месяцев к дате, принимает аргументы (timestamp, number, ["D", "M", "Y" ,"H", "I"]).
//Ниже предоставлен описания функции в виде кода
SUBDATE(unix, number, unit);
INFOBETWEENDAYS — Возвращает количество рабочих, сокращенных, не рабочих, а так же дни которые коснулись COVID. Принимает в аргументы начала даты, конец даты, страну ('by' - Белоруссия, 'kz' - Казахстан, 'ru' - Россия, 'ua' - Украина), учитывать ли сокращенные дни( true/ flase), учитывать ли дни короновируса( true/ flase ).
//Ниже предоставлен описания функции в виде кода
INFOBETWEENDAYS('12.02.2020', 15632322222, 'ru', true, true)
WORKDAYS — Функция автоматически возвращает итоговую дату. К дате в поле, которое является первым аргументом прибавляется количество рабочих дней из поля второго аргумента. Выходные дни и праздники в расчет не берутся. Третьим аргументом функции возможно выбрать страну, по календарю которого будет вестись расчет.
//Ниже предоставлен описания функции в виде кода
WORKDAYS(12.02.2020, 20, "ru")
EXECFORMULA — Выполняет функцию и устанавливает ответ в заданное поле указанное в формуле. Возвращает значение результата при успешном, либо кидает исключение Error который можно отловить через ERROR функцию. Необходимо писать в таком формате EXECFORMULA(ID ФОРМУЛЫ, ПАРАМЕТРЫ). В параметры необходимо передать значения которые требуются для расчета. Пример EXECFORMULA(1001, {'lead.cf2134322': 5000, 'lead.sale': lead.sale}); Данной функцией можно пользоваться, если необходимо в одной формуле необходимо установить больше результатов ответа при калькуляции. Не влияет на выключен ли данная формула или нет. При отсутствии каких либо параметров, если стоит необязательное заполнение всех полей пустым полям будет присвоено 'empty' по умолчанию, при обязательном будет кидать ошибку, какие параметры отсутствуют. Рекомендовано использовать вместе с CMD().
//Ниже предоставлен описания функции в виде кода
EXECFORMULA(formula_id, object_arguments)
GETFIELD — Возвращает модель поля по ключу.
//Ниже предоставлен описания функции в виде кода
GETFIELD(cf_id)
SETVALUE — Устанавливает значение в поле, не завершая формулу.
//Ниже предоставлен описания функции в виде кода
SETVALUE(field_key, value)
ARRAYFORMULA — Выполняет последовательно все команды.
//Ниже предоставлен описания функции в виде кода
ARRAYFORMULA([expression, expression...]);
MAP — Перебирает массив возвращая результат.
//Ниже предоставлен описания функции в виде кода
MAP(array, callback)
SUMARRAY — Суммирует значения всех чисел в массиве.
//Ниже предоставлен описания функции в виде кода
SUMARRAY(array_numbers);
FIELDNODE — Возвращает Node элемент из DOM страницы.
//Ниже предоставлен описания функции в виде кода
FIELDNODE(lead.cf32432.key)
CSS — Устанавливает стили для выбранного Node элемента.
//Ниже предоставлен описания функции в виде кода
CSS(node, params)
SELECTOR — Получает элемент из DOM. Первым аргументом принимает текущий node или ничего. Вторым аргементом принимает селектор а третьим булево значние. Если истина ищет в родительский node по селектору, а иначе в дочернем DOM.
//Ниже предоставлен описания функции в виде кода
SELECTOR(node, selector, parent)
LOGGER — Выводит переданный обьект в консоль лог.
//Ниже предоставлен описания функции в виде кода
LOGGER(extension)
EACH — Перебирает массив или обьект.
//Ниже предоставлен описания функции в виде кода
EACH(iterable, callback)
STORAGE — Сохраняет значение в window.CalcfieldStorage.
//Ниже предоставлен описания функции в виде кода
STORAGE(key, object)
CURRENTUSER — Возвращает обьект текущего пользователя в системе.
//Ниже предоставлен описания функции в виде кода
CURRENTUSER()
IMPLODE — Возвращает строку, содержащую строковое представление всех элементов массива в указанном порядке, со строкой glue между каждым элементом.
//Ниже предоставлен описания функции в виде кода
IMPLODE (values,[glue=","])
CSSPROPERTY — Применяет свойства css к объектам через применение important используйте только в том случае если необходимо переписать свойство которое сложно переписать.
//Ниже предоставлен описания функции в виде кода
CSSPROPERTY(nodes, styles)
MIN — Возвращает минимальное значение в массиве.
//Ниже предоставлен описания функции в виде кода
values
RESETVALUE — Очищает значение кастомного поля.
//Ниже предоставлен описания функции в виде кода
RESETVALUE(field_key)
HTMLREPLACE — Заменяет HTML код в указоном селекторе.
//Ниже предоставлен описания функции в виде кода
HTMLREPLACE(selector, html)
EVENT — Подписывается на изменение и вызов событий на DOM элемент.
//Ниже предоставлен описания функции в виде кода
EVENT(action, selector, func)
APPLYFUNC
//Ниже предоставлен описания функции в виде кода
APPLYFUNC(func, ...args)
SETTIMEOUT
//Ниже предоставлен описания функции в виде кода
SETTIMEOUT(func, miliseconds)
SETTIMEOUTAPPLY
//Ниже предоставлен описания функции в виде кода
SETTIMEOUTAPPLY(func, miliseconds)
MODALSUCCESS — Отображает сообщение в модальном окне.
//Ниже предоставлен описания функции в виде кода
MODALSUCCESS(message)
MODALERROR — Отображает сообщение ошибки в окне.
//Ниже предоставлен описания функции в виде кода
MODALERROR(error)
MODALCONFIRM — Выводить модальное окно для подтверждения какого либо действия.
//Ниже предоставлен описания функции в виде кода
MODALCONFIRM(text, accept, decline, options)
HANDLECATALOGCHANGE — Ловит изменение каталога товаров (изменение количества, добавление, удаление) в карточке и вызывает либо переданную функцию, либо срабатывает как EXECFORMULA, если передать 2 аргумента: (ID ФОРМУЛЫ, ПАРАМЕТРЫ).
//Ниже предоставлен описания функции в виде кода
HANDLECATALOGCHANGE(func)
ENABLEGROUPFIELDS — Позволяет сгруппировать дополнительные поля, добавляя спец.поле с названием группы или подгруппы в заданное место, в списке всех полей. Спец поле для групп: "---Название группы---". Спец поле для подгрупп: "--Название подгруппы--".
//Ниже предоставлен описания функции в виде кода
ENABLEGROUPFIELDS(auto_hide_groups)
DEFAULT — Если значение пусто то будет применено указанное значение по умолчанию.
//Ниже предоставлен описания функции в виде кода
DEFAULT(value, default)
EXPLODE — Возвращает массив строк, полученных разбиением строки string с использованием delimiter в качестве разделителя.
//Ниже предоставлен описания функции в виде кода
EXPLODE (string,[delimiter=","])
INPUTMASK — Создает маску для поля, принимает селектор первым аргументом или указатель, а вторым аргументом сам паттерн.
//Ниже предоставлен описания функции в виде кода
INPUTMASK(selector, pattern, placeholder=false, slots='_', accept='\d')
INTROUND — Округляет число до определенной точности. Применяются стандартные правила округления.
//Ниже предоставлен описания функции в виде кода
INTROUND(value, precision)
INTCEIL — Округляет число в большую сторону с определенной точностью.
//Ниже предоставлен описания функции в виде кода
INTCEIL(value, precision)
INTFLOOR — Округляет число в меньшую сторону с определенной точностью.
//Ниже предоставлен описания функции в виде кода
INTFLOOR(value, precision)
CURRENCYEXCHANGE — Возвращает текущий курс ЦБ в минимальном единичном эквиваленте. Принимает параметр кода валюты. Например, CURRENCY("USD") проставит дробное значение текущего курса долара в рублях. Поддерживаемые коды (AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, HKD, DKK, USD, EUR, INR, KZT, CAD, KGS, CNY, MDL, NOK, PLN, RON, XDR, SGD, TJS, TRY, TMT, UZS, UAH, CZK, SEK, CHF, ZAR, KRW, JPY).
//Ниже предоставлен описания функции в виде кода
CURRENCYEXCHANGE(code)
WORKDAYSNEW — Функция автоматически возвращает итоговую дату. К дате в поле, которое является первым аргументом прибавляется количество рабочих дней из поля второго аргумента (можно использовать отрицательные числа). Выходные дни и праздники в расчет не берутся. Третьим аргументом функции возможно выбрать страну, по календарю которого будет вестись расчет.
//Ниже предоставлен описания функции в виде кода
WORKDAYSNEW("12.02.2020", 20, "ru")
EXTRACTLELLTERS — Получает буквенную часть из текста.
//Ниже предоставлен описания функции в виде кода
EXTRACTLELLTERS(text)
SFITEMS — Получить массив выбранных элементов списков в супер-поле.
//Ниже предоставлен описания функции в виде кода
SFITEMS(superField)
STRINGIFY — Преобразовать в JSON строку.
//Ниже предоставлен описания функции в виде кода
STRINGIFY(value)
SFITEMID — Получить id выбранного элемента по указанному id списка.
//Ниже предоставлен описания функции в виде кода
SFITEMID(superField, catalogID)
REMOVEFROMARRAY — Принимает первым аргументом массив и возвращает новый массив в котором отсутствуют элементы которые равны второму аргументу функции.
//Ниже предоставлен описания функции в виде кода
REMOVEFROMARRAY( array, removalElement )
FORMULA — Возвращает строку другой формулы. Принимает в параметр ID формулы.
MATH — Выполняет функцию Math.eval() из библиотеки math.js. Подробнее можно ознакомится на сайте https://mathjs.org/
NUMBERTOSTRING — Возвращает числа с прописью, можно передать падеж. Принимает 3 аргумента число, валюта и формат. Например, NUMBERTOSTRING(42342, "RUBLE", "NORMAL_FORMAT"). Поддерживает такие валюты, как DOLLAR, EURO, RUBLE, HRYVNIA. Поддерживает такие форматы, как SHORT_FORMAT, NORMAL_FORMAT, NORMAL_DOC_FORMAT, DUPLICATION_FORMAT, CLARIFICATION_FORMAT.
Сложение, вычитания, деления, умножения
Чтобы применить математические операции к полям, вам нужно понять, какой тип поля вы планируете использовать. Самое просто, применять математические операции к типу поля “Число”, т.к. в таком случае переменная будет выглядеть очень просто 👇
lead.cf123456 + lead.cf456789
Если, вы применяете тип поля “Текст”, то в этом случае нужно применить функцию NUMBER.
NUMBER(lead.cf123456) + NUMBER(lead.cf456789)
NUMBER(lead.cf123456) - NUMBER(lead.cf456789)
NUMBER(lead.cf123456) * NUMBER(lead.cf456789)
NUMBER(lead.cf123456) / NUMBER(lead.cf456789)
ROUND(CURRENCY(KZT)/CURRENCY(USD)*lead.sale,4)