Пользовательские функции

Важно
Эта страница описывает свойство, которое требует навыков в разработке PHP
Если вы используете это свойство неверно, то можете сломать весь Бизнес-Процесс!

Множество Задач в Дизайнере Бизнес-Процессов могут использовать пользовательские функции.
Вы можете узнать опцию для использования этой функции по зеленой границе вокруг текстового поля и специальной иконке () рядом с текстовым полем.
Почти все такие поля имеют специальные подсказки о наличии этой функции (например о том, какое значение вы должны вернуть).
Эти скрипты являют собой стандартные PHP-скрипты с ограниченным количеством функций. Все возможные PHP-функции имеют те же самые аргументы, что и оригинальные PHP-функции.

Каждая пользовательская функция должна возвращать значение с объявлением “return”

Вы можете использовать следующие PHP-функции:

  • md5, rand, implode, substr, explode, microtime, date, time, sha1, hash, intval, floatval, floor, ceil, foreach
  • а также все функции, которые начинаются с “str” (такие как strpos, str_pad, str_replace, и др.)

Дополнительные функции

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

Примеры пользовательских функций

Эти примеры написаны только для демонстрации функций, если вы можете - напишите лучше.

  $var1 = "864"."0";
$var1 = $var1.(0 + intval($vtiger_purchaseorder)).intval($vtiger_purchaseorder);
$var2 = 1 + (2 * 5) - 8;
$var1 = substr($var1, 0, 5);
if($vtiger_purchaseorder == "1") {
   $add = intval($var1) * $var2;
   return time() + $add;
} else {
   $add = intval($var1) * intval($vtiger_purchaseorder);
   return time() + $add;
}

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

Здесь вы можете видеть единственный недостаток данного решения:

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

Другие примеры

Подождать до того же числа следующего месяца

return date("Y-m-d", strtotime("+1 month"));

Подождать 5 дней

$days = 5;
$date = strtotime($datefield);
return date("Y-m-d", $date + (86400 * $days))
Ваш комментарий. Вики-синтаксис разрешён:
   __ __  _____   ___    ___    ___ 
  / // / / ___/  / _ )  / _ \  / _ \
 / _  / / (_ /  / _  | / // / / // /
/_//_/  \___/  /____/ /____/ /____/