Данный кейс поддерживается телеграм ботом LiveDemo - уникальный айди этого кейса: 137789737. 

Подробнее про LiveDemo

Важно - Для тестирования сценариев, содержащих BPL-операции, необходимо использовать веб-виджет или интеграцию с каким-либо мессенджером, так как данные операции не работают в тестовом чате внутри редактора.

Как создать тестовый виджет можно узнать в статье: Создание тестового виджета

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

Фрагмент сценария

Настройки блоков и стрелок

1) В начале сценария необходимо установить блок результата с типом действия Без действия, и присвоить в нем новой переменной (в данном примере эта переменная названа currDate) значение системной переменной {компания.сегодня} для дальнейшего использования данной переменной в BPL-операциях.

Для определения текущей даты используется системная переменная {компания.сегодня}, для расчета исходя из часового пояса, указанного в настройках компании.

Для расчета по часовому поясу UTC+0 возможно использовать системную переменную {системные.сегодня}.



2) Далее с помощью блока вопроса необходимо спросить дату рождения у пользователя. Параметры блока вопроса изменять не обязательно.

3) Далее необходимо установить блок арифметики. В стрелке, идущей от блока вопроса, необходимо поставить галочку Сохранить ответ, и ввести в поле Название переменной имя новой переменной - в данном случае birthDate. Также необходимо выбрать Тип выходных данных - Дата, и Значение должно быть - Без разницы.

4) В блоке арифметики необходимо выбрать тип Произвольный тип, и в поле BPL-выражение внести следующий фрагмент кода:

$age = dt.sub($currDate, $birthDate);
$age = $age \ 31553280


В данном фрагменте создается новая переменная {age}, куда в первой строке записывается разница между текущей датой и датой рождения в секундах. Во второй строке полученное значение делится на количество секунд в одном году, с учетом того, что каждый четвертый год - високосный.


Далее вы можете использовать полученную переменную {age} для вывода, сохранения возраста пользователя в отчет, или других необходимых задач.

Пример работы фрагмента


Как узнать сколько клиенту лет по дате рождения, как узнать возраст клиента, как узнать сколько клиенту годиков по дате рождения, как получить возраст клиента, как получить сколько клиенту лет