Переменные в тексте: различия между версиями
Artem (обсуждение | вклад) Нет описания правки |
Artem (обсуждение | вклад) Нет описания правки |
||
| Строка 257: | Строка 257: | ||
'''Пример:''' | '''Пример:''' | ||
%%$ТАБЛИЦА(<nowiki>{{Аналитика.Услуга}}</nowiki>;<span style="color:red;"> | %%$ТАБЛИЦА(<nowiki>{{Аналитика.Услуга}}</nowiki>;<span style="color:red;">2</span>;<span style="color:red;">1</span>)$%%<br> | ||
{| class="wikitable" | {| class="wikitable" | ||
!colspan="3"|Набор услуг | !colspan="3"|Набор услуг | ||
Версия от 09:13, 29 августа 2022
Переменные хранят в себе какое-то значение, например, число, строку или другой тип данных. Переменные используются в:
- Названии задачи (в шаблоне задач или при создании задачи)
- Описании задачи (в шаблоне задач или при создании задачи)
- Шаблонах писем
- Действиях сценариев, кнопок, входящих вебхуков, правилах для задач по почте:
- Послать HTTP-запрос
- Отправить SMS
- Написать в WhatsApp
- Написать в Instagram
- Изменениях задач массовыми действиями, сценариями, кнопками, входящими вебхуками, правилами для задач по почте:
- Изменить название
- Изменить описание
- Добавить комментарий
- Установить значение поля (для полей типа «Текст»)
Для того, чтобы добавить переменную в текст, например в описание задачи, перейдите по ссылке «различные переменные» (1), сформируйте переменную и добавьте её в текст нужного поля шаблона задачи (2):
Вычисления над переменными
Иногда простой вставки значения переменной в текст бывает недостаточно, а вам необходимо предварительно произвести вычисления над значениями в переменных или обработать полученную в ней строку. Для таких действий используйте следующий синтаксис:
%%%ТЕКСТ ФОРМУЛЫ%%%
Примеры
ЕСЛИ
Для вставки текста в зависимости от значений переменных (условия) используется следующий синтаксис:
ТЕКСТ
%%$КОНЕЦБЛОКА$%%
Конструкцию необходимо добавлять одной строкой без пробелов и переносов:
Пример
Результат:
ДЛЯКАЖДОГО
Когда переменная представляет собой список значений, например {{Задача.Подзадачи}} или {{Задача.Исполнитель}}, и вам необходимо вывести информацию для каждого значения — используйте следующий синтаксис:
ТЕКСТ
%%$КОНЕЦБЛОКА$%%
Конструкцию необходимо добавлять одной строкой без пробелов и переносов:
Пример
Результат:
Вася Пятёрочкин - Разработчик
Катя Смирнова - СЕО
Результат:
2120 - Предчистовая отделка
2121 - Чистовая отделка
Пример с условием
%%$ДЛЯКАЖДОГО(Переменная;Разделитель)$%%
ТЕКСТ
%%$ЕСЛИ(Логическая формула)$%%
ТЕКСТ
%%$КОНЕЦБЛОКА$%%
ТЕКСТ
%%$КОНЕЦБЛОКА$%%
%%$ДЛЯКАЖДОГО({{Задача.Подзадачи}})$%%%%$ЕСЛИ({{Задача.Подзадачи.Статус}}="ТКП добавлен в расчет")$%%
{{Задача.Подзадачи.Контрагент}}, {{Задача.Подзадачи.Контрагент.ИНН}}, сумма контракта {{Задача.Подзадачи."Сумма контракта (у.е.)"}} {{Задача.Подзадачи.Валюта.Символ}}
%%$КОНЕЦБЛОКА$%%%%$КОНЕЦБЛОКА$%%
Результат:
ООО Восход, 5689845987654, 1500 $
ООО Рассвет, 5689845125699, 1700 $
ООО Заря, 5689845589674, 2500 $
ООО Свет, 5689845235689, 500 $
ТАБЛИЦА
Если переменная представляет собой список значений, и вам необходимо вывести информацию для каждого значения в виде таблицы — используйте следующий синтаксис:
ТЕКСТ
%%$КОНЕЦБЛОКА$%%
Пример
Пример показывает, как из добавленной в задачу аналитики вычленить только нужные блоки и отправить эту информацию клиенту в виде таблицы. Таблица добавляется через панель редактора:
Заказ №{{Задача.Номер}}
%%$ТАБЛИЦА({{Аналитика.Услуга}})$%%
| {{Аналитика.Услуга.Название услуги}} | {{Аналитика.Услуга.Сумма}} |
%%$КОНЕЦБЛОКА$%%
Общая сумма заказа: %%%ТЕКСТ(СУММА({{Аналитика.Услуга.Сумма}});",.2f")+МНОЖЕСТВЕННОЕЧИСЛО(СУММА({{Аналитика.Услуга.Сумма}}); " рубль"; " рубля"; " рублей")%%%
Результат:
Заказ №2118
| Графический дизайн | 1 600,00 |
| Программирование | 3 000,00 |
| Разработка ТЗ | 300,00 |
Общая сумма заказа: 4 900,00 рублей
Пример с условием
%%$ТАБЛИЦА(Переменная;0;0;Условие_БЕЗ_если)$%%
Таблица, нарисованная с помощью редактора ПланФикса
%%$КОНЕЦБЛОКА$%%
%%$ТАБЛИЦА({{Задача.Подзадачи}};1;0;{{Задача.Подзадачи.Статус}}="ТКП добавлен в расчет")$%%
| Контрагент | ИНН | Сумма контракта |
|---|---|---|
| {{Задача.Подзадачи.Контрагент}} | {{Задача.Подзадачи.Контрагент.ИНН}} | {{Задача.Подзадачи."Сумма контракта (у.е.)"}}{{Задача.Подзадачи.Валюта.Символ}} |
%%$КОНЕЦБЛОКА$%%
Результат:
| Контрагент | ИНН | Сумма контракта |
|---|---|---|
| ООО Восход | 5689845987654 | 1500$ |
| ООО Рассвет | 5689845125699 | 1700$ |
| ООО Заря | 5689845589674 | 2500$ |
| ООО Свет | 5689845235689 | 500$ |
Чтобы добавить в таблицу шапку, нажмите на нее правой кнопкой мыши и выберите Cтрока - Вставить строку сверху:
Пример с шапкой и итогом
Для того, чтобы вывести в таблице шапку или строку итогов используйте в синтаксисе следующие параметры:
Таблица, нарисованная с помощью редактора ПланФикса
%%$КОНЕЦБЛОКА$%%
Пример:
%%$ТАБЛИЦА({{Аналитика.Услуга}};1;1)$%%
| № | Название | Стоимость |
|---|---|---|
| {{Аналитика.Услуга.Порядковый номер записи}} | {{Аналитика.Услуга.Название услуги}} | {{Аналитика.Услуга.Сумма}} |
| Итог | %%%Сумма({{Аналитика.Услуга.Сумма}})%%% | |
%%$КОНЕЦБЛОКА$%%
Результат:
| № | Название | Стоимость |
|---|---|---|
| 1 | Разработка ТЗ | 1 000,00 |
| 2 | Программирование | 3 705,00 |
| 3 | Графический дизайн | 1 035,00 |
| 4 | Тестирование | 690,00 |
| Итог | 6430 | |
Цифры, выделенные красным цветом, указывают на то, сколько строк в начале и в конце таблицы не повторять.
Так, в примере выше указаны цифры (1;1) — это означает, что одна строка в начале таблицы и одна строка в конце таблицы множится не будут.
Для того, чтобы не множились две строки в начале таблицы, укажите это так — (2;1).
Пример:
%%$ТАБЛИЦА({{Аналитика.Услуга}};2;1)$%%
| Набор услуг | ||
|---|---|---|
| № | Название | Стоимость |
| {{Аналитика.Услуга.Порядковый номер записи}} | {{Аналитика.Услуга.Название услуги}} | {{Аналитика.Услуга.Сумма}} |
| Итог | %%%Сумма({{Аналитика.Услуга.Сумма}})%%% | |
%%$КОНЕЦБЛОКА$%%
Результат:
| Набор услуг | ||
|---|---|---|
| № | Название | Стоимость |
| 1 | Разработка ТЗ | 1 000,00 |
| 2 | Программирование | 3 705,00 |
| 3 | Графический дизайн | 1 035,00 |
| 4 | Тестирование | 690,00 |
| Итог | 6430 | |
ДЛЯКАЖДОГО и ТАБЛИЦА с инфоблоками
При разборе письма или ответа на HTTP-запрос вы получаете несколько строк данных и хотите добавить их в комментарий в виде структурированного текста или таблицы:
- Извлеките данные в инфоблоки:
- Затем воспользуйтесь следующим синтаксисом:
%%$ДЛЯКАЖДОГО({{Инфоблок.!строка}};Разделитель)$%%
{{Инфоблок.!строка.Имя инфоблока}}
%%$КОНЕЦБЛОКА$%%
%%$ТАБЛИЦА({{Инфоблок.!строка}})$%%
{{Инфоблок.!строка.Имя инфоблока}}
%%$КОНЕЦБЛОКА$%%
Пример
Извлечём данные в инфоблоки «Товар» и «Цена» и добавим их в таблицу:
%%$ТАБЛИЦА({{Инфоблок.!строка}})$%%
| {{Инфоблок.!строка.Товар}} | {{Инфоблок.!строка.Цена}} |
%%$КОНЕЦБЛОКА$%%
Результат:
| Карандаш | 150,00 |
| Ручка | 200,00 |
| Тетрадь | 100,00 |