Вопрос

Бизнес-правила

Коллеги, добрый день. 

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

Создала соответствующие бизнес-правила:

Изображение удалено.

Изображение удалено.

Но при переводе лида в стадию "дисквалифицирован" появляется уведомление что в поле необходимо указать значение, но само поле на странице не появляется. В чём проблема?

Изображение удалено.

Нравится

10 комментариев

А в дизайнере системы в разделе это поле вынесено?) 

Калушка Д.,

В скринах бизнес-правил указано это поле! Ну и еще раз добавлю скрин, чтобы убедились

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

Думаю, что это правило видимости, прописанное в базовой странице лида имеет более высокий приоритет:



              "visible": {

                            "bindTo": "QualifyStatus",

                            "bindConfig": {"converter": "getIsDisqualifiedStatus"}

                   }

Но почему-то до сохранения оно не срабатывает при изменении стадии на ActionsDashboard.

Я попробовал - если добавить поле "Стадия лида" и им менять стадии, то всё работает корректно.



Вывод - ActionsDashboard имеет недоработки (кроме данной, замечено, что при работе с ним можно сравнивать только напрямую со значением стадии, но невозможно с другими полями справочника стадий)

Причем, интересно - при смене стадии на ActionsDashboard место для поля "Причина дисквалификации" появляется, но само поле не отображается

Бизнес-правила нормально отрабатывают до сохранения, на мгновение поле появляется и становится обязательным, но в этот же момент изменение кейса приводит к сохранению страницы, а поле "Причина отказа" появилось в обязательном виде и оно пока еще пустое, что приводит к конфликту и сохранение записи отменяется, стадия возвращается на предыдущую и поле исчезает. Я здесь не спец, но думаю, что можно как-то изменить работу кейса, чтобы он не сохранял страницу автоматически при изменении стадии, вот тогда появится возможность выбрать причину отказа и ручками сохранить запись.

 

Вот, поймал на скрине момент во время изменения стадии и сохранения страницы.

 

То есть, проблема в "откате" статуса обратно? А как заставить его не откатываться?

Здравствуйте!

Данное поведение при переводе лида в статус "Дисквалифицирован" заложено в базовой логике приложения: второе правило, которое делает поле обязательным, корректно работать не может. Action Dashboard, при изменении стадии лида на "Дисквалифицирован", сразу сохраняет этот лид целиком, и тут включаются правила, поэтому по одному правилу поле отображается, и одновременно второе правило проверяет его значение, а оно (поле) в этот момент заполненным быть не может. Сделать это поле обязательным скорее всего не удастся.

Но правило таки работает, если вынести на страницу поле "Стадия лида", и изменять стадию не Action Dashboard, а в этом поле.

Одеяненко Юлия,

Добрый день.

Попробовала удалить дефолтную стадию "дисквалифицирован" и создать свою, но всё равно работает не корректно. Но ведь если добавить новую стадию, то базовая логика на сохранение не должна работать?

 

Дарина, здравствуйте!

Проблема возникает именно из-за базовой логики работы кейсов в Action Dashboard: при переходе на стадию "Дисквалифицирован" карточка сразу сохраняется. У Вас она сохраняется через секунду после того, как отработало бизнес-правило, так как оно отрабатывает до сохранения. Так как карточка сохранена, сразу же идет проверка полей на валидность, согласно бизнес-правилам.

Логика такой работы, возможно, будет пересмотрена, но сейчас достаточно рабочий вариант - выводить на страницу поле "Стадия лида" и переводить в "Дисквалифицирован" именно в поле.

Показать все комментарии