Действие "Изменить элемент смарт-процесса" позволяет изменить уже существующий элемент смарт-процесса, который предварительно записан в переменную с типом "Элемент смарт-процесса".
Действие содержит следующие параметры:
Взять элемент из переменной - переменная с типом "Элемент смарт-процесса" в которую на момент выполнения действия уже должен быть записан нужный вам элемент.
Смарт-процесс - смарт-процесс, к которому относится выбранная переменная. Это поле не доступно для редактирования, оно лишь визуально показывает к каким смарт-процессом связана переменная.
Заполнение полей элемента - набор полей элемента смарт-процесса, которые нужно изменить, где:
- Поле элемента - поле элемента смарт-процесса, которое нужно изменить.
- Заполнить из - источник, откуда берутся данные для заполнения поля. Это может быть переменная, которая должна быть предварительно заполнена. Если переменная окажется пустая, а поле будет обязательным для заполнения - элемент не создастся.
В зависимости от типа поля элемента, ему будет доступен определённый набор переменных.
- Привязка к элементам CRM - переменные с типом "Связь с сущностью CRM", также для таких полей можно указать взять CRM из чата, а не из переменной.
- Привязка к элементам инф. блоков - переменные с типом "Привязка к элементу списка".
- Список - переменные с типом "Привязка к значению свойства типа Список". Для поля "Направление" и полей, привязанных к справочникам (например, стадия или источник), можно указать конкретное значение из справочника.
- Привязка к сотруднику - переменные с типом "Привязка к пользователю".
- Ссылка - переменные с типом "Строка".
- Даты - переменные с типом "Дата".
- Строка или числовое поле - доступен любой тип переменных. При несоответствии типа поля и переменной из переменных с типами "Связь с сущностью CRM", "Привязка к элементу списка", "Привязка к значению свойства типа Список", "Привязка к пользователю" запишется идентификатор (ID).
Итого, для изменения элемента вам нужно выполнить следующее:
- Создать переменную с типом "Элемент смарт-процесса".
- При необходимости создать набор переменных в которых будет храниться нужная вам информация, которую вы потом запишете в элемент смарт-процесса.
- В переменную с типом "Элемент смарт-процесса" записать нужный вам элемент с помощью действия "Создать элемент смарт-процесса" или "Найти элемент смарт-процесса".
-
Записать нужные вам данные в остальные переменные (если они есть) с помощью действий или типов ответа "Ждать произвольного ответа пользователя" и "Ожидать ответ из предустановленного списка".
-
В действии "Изменить элемент смарт-процесса" сопоставить поля и ранее созданные переменные.
Пример.
Предположим, что у нас есть смарт-процесс "Заказы". Каждый элемент - это отдельный заказ, где стадии элемента означают статус заказа. Наша цель - изменить статус заказа после передачи товара клиенту.
У нас есть переменная "Заказ" с типом "Элемент смарт-процесса" и смарт-процессом "Заказы".
В нашем сценарии при диалоге с клиентом эта переменная уже должна быть заполнена.
Создадим узел, где в действии "Отправить текст" попросим клиента подтвердить статус заказа.
В типе ответа "Задать варианты ответов вручную" предоставим варианты ответа.
В нашем случае их три:
- Товар получен - стадия "Успешно"
- Товар не пришёл - стадия "Клиент не получил заказ"
- Товар пришёл с браком - стадия "Брак"
Теперь для каждого ответа создадим узел и в эти злы добавим одно действие "Изменить элемент смарт-процесса":
Взять элемент из переменной - выбираем нашу переменную "Заказ", где уже хранится ранее сохранённый в неё элемент смарт-процесса.
Заполнение полей элемента - добавляем поле и в колонке "Поле элемента" выбираем "Стадия", а в колонке "Заполнить из" выбираем конкретную стадию. Стадия должна соответствовать выбранному варианту ответа в предыдущем узле.
В итоге мы должны получить следующую структуру узлов:
Итак, сначала чат-бот предлагает клиенту выбрать варианты ответа.
После того как клиент выберет вариант ответа - чат-бот перейдёт в соответствующий этому ответу узел и изменит стадию элемента смарт-процесса (заказа).