Задача: Нам необходимо иметь возможность вернуть сделку на предыдущую стадию в какой-либо автоматизации.
Проблема: В Битрикс24 предыдущая стадия показывается в таймлайне, в отчетах, но использовать в бизнес-процессе или в роботах мы это не можем. Поэтому нам нужно написать собственный бизнес-процесс, который будет записывать предыдущую стадию в созданное нами поле.
Будем создавать именно бизнес-процесс, поэтому на вашем портале должен быть тариф в котором есть бизнес-процессы.
Создадим новый бизнес-процесс, который будет запускаться при изменении сделки (если у вас уже есть такой, то этот шаг пропускаем)
2. Создаем два поля в сделке с типом строка: — Предыдущая стадия — Служебное (предыдущая стадия) — в этом поле мы будем хранить историю, чтобы при смене стадии перезаписать поле «Предыдущая стадия«
Служебное поле можно ограничить на чтение, чтобы оно не мешало работе.
3. Начинаем писать бизнес-процесс и начинаем с активити Выбор данных crm
ID сущности = ID сделки, в списке выбираем Стадия сделки и обязательно ставим галочку напротив «Версия для печати» (если галочку не поставить, то система будет выводить не название стадии, а ее ID)
4. Теперь нам нужно написать условие, при котором стадия будет перезаписываться, только если была смена стадии, иначе нет.
5. Далее в левой ветке условий, если стадия поменялась выполняем настройки.
Первым активити «Изменение документа» мы записываем в поле «Предыдущая стадия» данные из поля «Служебное (предыдущая стадия)«.
Вторым активити «Изменение документа» мы записываем в поле «Служебное (предыдущая стадия)» текущую стадию сделки.
Которую берем либо из активити Выбор данных crm через Доп результаты
Либо из поля документа.
В итоге получаем поле с постоянно актуальной предыдущей стадией, которое можем использовать, где хотим.
А если вам не хочется заморачиваться написанием этого процесса или у вас тариф без бизнес-процессов, то вы можете установить специальное приложение из Маркетплейса Битрикс24 — Предыдущая стадия сделки