SAP Knowledge Base Article - Public

3147974 - Compound Employee API - <hasMore> value equal to "True" even but the querymore call has no results

Symptom

Performing a call on Compound Employee API query with "maxRows" value set as 100.

You noticed that the Query call returned <numResults>82 records (less than the maxRows value) and hasMore value eq "True"(indicating that more results are available)

However the queryMore call returned <numResults>0</numResults> <hasMore>false</hasMore> values.

Environment

  • SAP SuccessFactors HXM Core
  • Compound Employee API

Reproducing the Issue

  1. Fetch data from Compound Employee entity with a parameter for maxRows.
  2. Check the first query call payload and see the hasMore value is True
  3. When you check the second call (queryMore) the payload shows 0 results.

Cause

 Only restricted access is granted to the user to perform the calls against Compound Employee API

Resolution

This is expected behavior in case only restricted access is granted to the user to perform the calls against Compound Employee API.

Please check the second "Note" section on this page:

https://help.sap.com/viewer/5bb9a5b997a843c88e769a105e4af4d4/latest/en-US/d82ea6082db64daa94b8010e70699d5e.html

Short explanation:

- First page had a bigger result than page size (100) but 18 of the records were removed because of the RBP filter

- Second page had still results but all records were removed by the RBP filter

Keywords

CE, API, Compound, hasMore, maxRows, parameter, True, parameter , KBA , LOD-SF-INT-CE , Compound Employee API , LOD-SF-INT , Integrations , Problem

Product

SAP SuccessFactors HCM suite all versions