Performance issue while Visit Creation in C4C
Sometimes you can get a performance issue when creating a visit in SAP Hybris C4C. There can be multiple reasons for that like Customization (No. of roundtrips, PDI, Network, workflows (visit refresh) etc).
This blog gives details on how Activity Routing rules can impact the performance and how this can be improved.
Activity planner can be used to plan the activities, such as surveys and tasks, to use when conducting customer visits. Use the activity planner to create lists of activities that can be added to site visits. You can create standard lists of activities to be used with different accounts, or by different sales personnel. Use activity routing rules to associate plans with specific accounts, locations, or employees. You can also create and assign activity plans for tickets. Activity plans can include tasks and surveys.
How Activity Routing Rules impact the Performance:
You can create Activity Routing rule without any sales org but in that case, when a visit is created, visit refresh might happen as a part of configured workflow and due to this system pick all rules which has the sales org of visit together with all rules with no org. Once this happens all rules (with and without Sales Org) will be evaluated and this impacts the performance.
Example of Activity Routing Rules without Sales Org:
How to improve Performance:
This can be improved by adding the hidden facet of Organization Unit(in case this is hidden) and assign sales org for which rule is valid.
The fundamental idea is to have less rules with no organizational unit to reduce the numbers of rules considered for evaluation during the Visit refresh process and thus improve the performance.
With 1802 release: There is a new tab which is introduced and that is “Accounts”. Under this you can find Target Group and Accounts.
Target Groups and Accounts can be used for direct assignment of the Activity Plans to the accounts specified under Accounts and Target Group section.
If you provide Accounts without conditions, then the Activity plans maintained in the rule will be directly assigned to the specified accounts without condition evaluation. You can still maintain conditions, but they aren’t a requirement as they were before direct assignment was introduced. Even with conditions, the rules will only evaluate based on the account list maintained in the rule. The performance will be faster when we provide the details of Accounts without conditions.
If you provide the Target Group, then the Activity plans will be assigned only for the Accounts under that Target Group.
If you provide both i.e. Target Group and Accounts, then it works as an “OR” condition. In that case the Activity Plans will be assigned to the accounts which is being specified in the Accounts section plus the Accounts in the Target Group.
Organization Units along with Accounts:
If you define the Org Units along with the Accounts details without condition, the performance will be much better because system has to pick only those Accounts having the given Org units for the direct Assignment (without the condition execution).