- When running an ad-hoc report for RBP Permission to User it is not working.
- When ran online, the report started processing and never returned any result;
- When ran off line, the status kept in "started" all the time.
- You can observe this it in Schedule reports.
- SAP SuccessFactors HCM Core
- Analytics & Reporting
- Ad Hoc Reporting
- Job Schedule
Reproducing the Issue
1. Go to Analytics -> Reporting -> Ad Hoc Reports .
2. Create New Report and select a Report - Table as the type.
3. Under Report Definition type, select Single Domain & RBP Permission to User Report.
4. Select Columns, then "Select Columns" button and select User ID and Role Name. Ensure that you select User ID and not UserName. Click Finished.
5. Select Filters, Refine Criteria.
7. For the filter, select Permission.
8. On the Define Permission Filter screen, select By My Selection and select Manage onboarding permission. You may need to scroll through the available pages to find the appropriate permission. Click Finished.
9. Preview the report - within 30-40 seconds the error appears.
Error: Caused by: com.successfactors.analytics.queryengine.exceptions.QueryEngineException: Error encountered in executing the query.ORA-01489: result of string concatenation is too long
The max length of a String in the database is 5000 characters. When there are too many groups defined as access groups or target groups then overall names for these group will be too long which will be more than 5000 characters leading to the error
- Run RBP items in Check Tool. The check tool, there is one RBP check to verify if there is such a case there.
- The general solution for this issue is reduce the total number of groups in the access groups or target groups parts.
- E.g. Permission role A has one granting rule
- In the granting details, customer set group1, group2, .... group150, as the access groups.
- Then customer run the ad-hoc report and find the report generation is failed.
- To fix this, the key question is can we combine the group1, ... group150 into a few big groups.
- Customer might define the groups as group1 for "all users in USA sales department", group2 for "all users in UK sales department"...
- The solution is to define a new group as "all users in sales department from USA, UK.....", and then use this new group to replace the group1 ...group150 in the permission role access groups.
Customer Support can refer to the internal JIRA KB-94
ORA-01489, ad-hoc, reporting, rbp, user report, RBP Permission to User Report, result of string concatenation is too long, unable to generate report, , KBA , LOD-SF-PLT-PRV , Provisioning Changes , LOD-SF-PLT , Foundational Capabilities & Tools , LOD-SF-ANA , Analytics & Reporting (Ad Hoc, ORD) , LOD-SF-PLT-RBP , Role Based Permissions , Problem