Let me walk through the complete configuration requirements for dynamically adding review steps via business rules in succession planning forms.
Business Rule Syntax Verification
First, ensure your business rule uses the correct syntax for SuccessFactors. The proper structure should be:
<rule>
<when>
<![CDATA[
form.readiness == 'Ready Now' &&
form.positionLevel >= 5
]]>
</when>
<then>
<![CDATA[
routeMap.showStep('executive_review');
]]>
</then>
</rule>
Note the key differences: use form.fieldName notation for field references, double equals == for comparison, double ampersand && for logical AND, and routeMap.showStep() method rather than addStep(). The CDATA sections are required for complex expressions.
Route Map Configuration for Hidden Steps
Your executive_review step must be fully configured in the route map, not just marked as hidden. Required configurations include:
- Step Definition: Define the step with a unique ID (‘executive_review’) and descriptive name
- Role Assignment: Assign the executive reviewer role - typically a role-based permission group like ‘Executive Leadership’
- Form Sections: Specify which form sections are accessible during this review step
- Step Entry Conditions: This is critical - set entry conditions that mirror your business rule logic
- Visibility: Set initial visibility to ‘hidden’ but ensure the step is marked as ‘active’ in the route map
The step entry conditions should be:
readiness = 'Ready Now' AND positionLevel >= 5
This creates alignment between when your business rule triggers the step and when the step is eligible to be entered.
Hidden Step Management
Hidden steps in SuccessFactors operate differently than inactive steps. A hidden step exists in the route map but doesn’t appear in the routing sequence unless explicitly shown by a business rule. Key points:
- Hidden steps must have complete configuration (roles, permissions, sections) even though they’re not initially visible
- The step must be marked ‘active’ in the route map - ‘inactive’ steps cannot be shown by business rules
- Hidden steps still count toward the total step sequence numbering
- Permissions for hidden steps should be configured as if the step were always visible
Condition Evaluation Timing
Business rules for route map modifications evaluate at specific trigger points. For add/show step rules, evaluation occurs:
- When form transitions from completion to routing phase
- After each step completion when determining next step
- When explicit rule re-evaluation is triggered
Your readiness rating and position level fields must be populated and saved BEFORE the form enters routing. If these fields are populated during routing, the initial evaluation will miss them. Consider adding a pre-routing validation step that:
- Confirms required fields are populated
- Saves the form state
- Then triggers routing
Debugging Steps
To diagnose why your rule isn’t executing:
- Enable business rule logging in Admin Center > System Configuration > Business Rules
- Submit a test form that meets your criteria
- Check the business rule execution log for your specific rule
- Look for evaluation results showing whether the condition matched
- Check for any error messages about step not found or permission issues
Common issues revealed by logs:
- Field values are null or empty at evaluation time
- Step ID mismatch between rule and route map
- Insufficient permissions for the step role assignment
- Step marked as inactive rather than hidden
Testing Approach
Create a test scenario:
- Create a succession form with readiness = ‘Ready Now’ and level = 5
- Save the form completely before initiating routing
- Check the route map preview - the executive_review step should appear if rule triggered
- If step doesn’t appear, check business rule logs for evaluation details
- Verify the hidden step configuration includes all required elements
If logs show the rule evaluated but step didn’t appear, the issue is in the step configuration. If logs show the rule didn’t evaluate, the issue is in rule syntax or trigger timing.
Advanced Configuration
For complex scenarios, consider using a two-rule approach:
- First rule: Validates conditions and sets a flag field
- Second rule: Shows the step based on the flag field
This separates condition evaluation from step manipulation and can help isolate where issues occur.
Implement these corrections and the dynamic step addition should function correctly. The key is ensuring complete alignment between business rule conditions, step entry conditions, and step configuration status.