Symptom
Using a picklist label field in canvas report query or object filter or in calculated column's IF/ELSE conditional operator causes data discrepancy. The data visibility is inconsistent in the column with each report run.
The behavior is same for detailed and advanced canvas reports.
This is applicable for more complex nested IF/ELSE calculated queries as well.
Environment
SAP SuccessFactors Canvas Reports
Canvas Reporting framework
Reproducing the Issue
For calculated columns:
- Create a calculated column using IF/ELSE statement.
- Include a picklist label field in IF section with a value using an operator = or !=. Ex: Department (label)
- Add the required value in the VALUE section to display the results.
- Then check the report results for the column in the report preview and export the data
- The values in the created column are showing up inconsistently.
Ex: for some users the value in the column are appearing and some its not.
For Query filters:
- Create a canvas report.
- Go to the query/object filtering option and apply filters for the Picklist label fields.
- Translate the instance to some other language and run the canvas report/share the report to some other user and run the report by proxying the user profile -> you can see errors appearing in canvas report inconsistently.
Cause
For calculated columns:
IF/ELSE conditional operators when used with picklist label fields show up inconsistency with string fields which are translatable.
For Query filters:
When applying filters in query or object levels in canvas reports used with picklist label fields show up inconsistency which are translatable for data display.
Resolution
For calculated columns:
- Instead of picklist label fields it is recommended to use the picklist code fields in the IF block of the calculated column
- Code fields are not translatable but unique throughout the instance configurations so using them in the conditional operators in IF statements will avoid the data discrepancy.
For Query filters:
- Instead of picklist label fields it is recommended to use the picklist code fields in the filters of the query or object.
Another workaround:
- Use of story reports instead of canvas is a recommended approach to avoid such inconsistency.
- Story reports are more precise when we design calculated columns. Formula Functions in Calculated Columns for Story Reports | SAP Help Portal
See Also
- Creating a Calculated Column with IF/THEN/ELSE Statements in Detailed Reporting | SAP Help Portal
- Advanced Reporting query: Calculated Columns
- Detailed Reporting query: Calculated Columns
Keywords
Canvas reports; Canvas reports calculated columns; Calculated columns; Label fields in calculated columns , KBA , LOD-SF-ANA-ORD , Online Report Designer , Problem
Product
Attachments
| Pasted image.png |
SAP Knowledge Base Article - Public