Всем привет!
Как и обещал, продолжаем рассмотрение темы Product rules в CPQ.
В прошлой статье (CPQ. Product rules. Part 1) мы рассмотрели как создавать Product Rule типа Validation с несколькими Error Condition. Теперь изучим как создать Product Rule для определенного Product Bundle (что это —можно почитать здесь CPQ. First Look).
Допустим, у нас есть Product Bundle - Telecommuter Workstation. При его добавлении в Quote есть возможность выбрать его конфигурацию:
Как видно, здесь есть компоненты, которые включены в Bundle по умолчанию, а есть такие, которые необходимо выбирать. Необходимо сделать так, чтобы менеджер не мог продать этот продукт без, допустим, микрофона.
Для этого нам нужно создать Product Rule, который будет срабатывать только в контексте Bundle - Telecommuter Workstation. Для создания такого правила нам необходимо знать, сколько микрофонов включено в Bundle. Чтобы хранить это значение, можно использовать Summary Variable. Ее функция будет очень простой - “пробежаться” по набору данных и посчитать одно значение - сумму, максимальное или минимальное значение и т.д. Создадим ее.
Рассмотрим более подробно настройки при создании:
- Target Object - выбираем Объект, по записям которого осуществляется подсчет
- Aggregate Function - выбираем, что делать с данными
- Filter Field - это фильтр для выбора нужных записей объекта
В данном случае осуществляется выборка записей объекта Product Option со значением поля Product Code, оканчивающимся на MIC.
Теперь создадим нужный нам Product Rule.
Это будет событие типа Validation, которое будет срабатывать при сохранении Product.
Теперь нам нужно объяснить правилу, когда оно должно срабатывать.
Для этого укажем необходимые Error Condition в соответствующем релейтед листе:
Здесь мы указываем, что Product Rule должен срабатывать только когда Summary Variable с именем Microphone Sum равна 0, то есть количество микрофонов в Product Bundle равно 0.
И последний шаг - сделаем так, чтобы этот Product Rule срабатывал только при редактировании Product Bundle - Telecommuter Workstation. Для этого в Related List - Configuration Rules создадим новое правило:
Теперь протестируем. Добавим в Quote - Telecommuter Workstation. По умолчанию в нем не выбран ни один микрофон. Попробуем сохранить - получили сообщение об ошибке.
Наше правило работает )).
Сегодня мы научились создавать Product Rule типа Validation, которое будет работать только для определенного Product Bundle, что иногда очень удобно. В следующей статье мы узнаем, как работать с Product Rule типа Selection. Правила этого типа позволяют автоматически конфигурировать Product Bundle в зависимости от определенных условий.