- Advance Reporting query does not return results when applying Person Context filter
- A specific user is not getting records in Realms query while applied Person Context filter
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
- SAP SuccessFactors HXM Suite
- Report Canvas Advanced Reporting
Reproducing the Issue
- Advance Reporting
- Open Realms Query
- Apply Person Context
- Select Distance - 2
No Records in the Realms query. This issue is happening for a single user - User A. But all other users are able to apply Person Context filter.
"Status" field is active and reportable in User > "User Sys Info" table for UserA in advance Reporting.
Status field is fetching data in Realms Query. But still UserA is unable to apply Person Context.
Person Context filter is used to enable filtering on user's direct and Indirect reporties.
- UserA has total 8 members in his/ her ORG Chart.
- UserA has been assigned to RBP Role called - "RBP Role 1" to view data in "Status" field.
- Target Population of the "RBP Role 1" has been set to view self data.
- Target Population of this role does not include UserA's all direct and Indirect reporties.
- The user running the report chosen any values for the person context at runtime.
To work with Person Context feature in Advance Reporting, below are the pre-requisites:
- Standard Element - "Status" field must be configured in Succession Data Model
- You have to grant RBP permission on the following fields:
- User ID
- The user running the report must have the Target Population of the fields above set, to include all the people who he should be able to see, as well as the user's self data.
- Example - Target Population of "RBP Role 1" must include 8 Direct/Indirect Reports of UserA and himself.
How to grant permission on these fields in RBP Role:
- Go to Admin Center > Set User Permission > Manage Permission Role > Open the RBP role assigned to you > Click on Permission
- Search for the Employee Data section (Under User Permission)
- Select the fields Status, User ID and Manager (Under Employee Profile)
- Grant permission to the user running the report
- Set the target population for his team and for himself > Finished > Save Changes
- Ensure to Set the Target Population correctly for this field and include access to view Self Data
- It takes few hours to refresh RBP (Approx 12 Hours)
Configure the Status field in Data Model:
Succession Data Model is an XML file available in Provisioning. (NOTE - Partner and Support team will have access to Provisioning. Customer cannot access Provisioning.)
Employee Profile Team (Component - "LOD-SF-EP") is responsible to make changes in Standard Element fields in Succession Data Model.
Here is the configuration of Status field in Succession data model in test instance - :
<standard-element id="status" required="false" matrix-filter="false">
The user has to choose the Person context filter the first time she/he runs the report.
NOTE: In case you did not have the Status field configured yet in Data Model, and you have recently set it up, open an case to perform a Metadata Reload in Advance Reporting backend to reflect the changes made in data model. Once you grant the RBP permission on Status field, it will be Active under "User Sys Info" table in Advance Reporting (Go to advance reporting > User > User Sys Info > Expand this "User Sys Info table" > status field will be active).
Person, Context, Filter, Advanced, Reporting, no, data, People, manager, team, view, status , KBA , LOD-SF-ANA-ADV , Advanced Reporting (ODS) , Problem