cancel
Showing results for 
Search instead for 
Did you mean: 

Not able to fetch more than 4 records for users via SOAP API from standalone code

0 Kudos

Hi Experts,

We are consuming SOAP API in SAP S/4HANA Cloud

Servicename – QueryBusinessUserIn(BusinessUser)

https://Host-name/sap/bc/srt/scs_ext/sap/querybusinessuserin

SOAP UI responds with full reconciliation of all records.


From SAP S/4 HANA Cloud, we are only able to fetch records for 4 users or less than 4 users from the standalone (fig 1).We only get this issue in standalone

  • For more than 5 users the response is blank in the standalone (fig 2).

Please help us here on what could be done to get full records i.e. when it has equal or more than 5 records.

Regards,
Sidhant Mahajan

Accepted Solutions (1)

Accepted Solutions (1)

quovadis
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello chiran9987,

Not sure I understand your comment "...from the standalone..."

I just implemented the same SOAP API, namely QUERYBUSINESSUSERIN, with SAP API Management against the COMM_0093 scenario in my test system and I seemingly can fetch any number of users.

For instance the following envelope was used to fetch 50 business users:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <n0:BusinessUserSimpleByElementsQuery_sync xmlns:n0="http://sap.com/xi/ABA">
            <BusinessUser>
                <!-- <PersonExternalIDInterval>
                    <IntervalBoundaryTypeCode>1</IntervalBoundaryTypeCode>
                    <LowerBoundaryPersonExtID>{<PersonExtID>}</LowerBoundaryPersonExtID>
                </PersonExternalIDInterval> -->
                <BusinessPartnerRoleCodeInterval>
                    <IntervalBoundaryTypeCode>1</IntervalBoundaryTypeCode>
                    <LowerBoundaryBusinessPartnerRoleCode>BUP003</LowerBoundaryBusinessPartnerRoleCode> 
                </BusinessPartnerRoleCodeInterval>
            </BusinessUser>
            <QueryProcessingConditions>
                <QueryHitsMaximumNumberValue>50</QueryHitsMaximumNumberValue>
                <QueryHitsUnlimitedIndicator>false</QueryHitsUnlimitedIndicator>
            </QueryProcessingConditions>
        </n0:BusinessUserSimpleByElementsQuery_sync>
    </soap:Body> 
</soap:Envelope>

and here goes the response snippet that indicated 50 business users records were retrieved with the indication there are more in the system....

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
  <soap-env:Header/>
  <soap-env:Body>
..................(truncated).....................................
      <ResponseProcessingConditions>
        <HitsTotalNumberValue>0</HitsTotalNumberValue>
        <ReturnedQueryHitsNumberValue>50</ReturnedQueryHitsNumberValue>
        <MoreHitsAvailableIndicator>true</MoreHitsAvailableIndicator>
        <LastReturnedObjectID>50</LastReturnedObjectID>
      </ResponseProcessingConditions>
      <Log>
        <MaximumLogItemSeverityCode>1</MaximumLogItemSeverityCode>
        <Item>
          <TypeID>117(FS4BPU_EMPL_MINIMSTR)</TypeID>
          <SeverityCode>1</SeverityCode>
          <Note>50 Business User(s) found.</Note>
        </Item>
      </Log>
    </n0:BusinessUserSimplyByElementsResponse_sync>
  </soap-env:Body>
</soap-env:Envelope>

I hope it helps....

kind regards; Piotr;

Answers (0)