Symptom
- When calling API_CE_REQUESTFORQUOTATION_0001 and using a supplier filter within the $expand on _RequestForQuotationBidder, the following behavior is observed:
- The parent RequestForQuotation entity is returned successfully.
- The expanded _RequestForQuotationBidder collection is either empty or not filtered as expected.
- RFQs are returned even when the specified supplier is not assigned as a bidder.
- The $filter condition inside $expand does not restrict the parent entity results.
- No error message is triggered during the API call.
Environment
SAP S/4HANA Cloud Public Edition
Reproducing the Issue
- Perform a GET request to the RequestForQuotation entity set of api_ce_requestforquotation_0001.
- Use $expand for _RequestForQuotationBidder with an inner $filter on Supplier equal to the id.
- Observe that the main RequestForQuotation data is returned but the expanded _RequestForQuotationBidder list is empty or includes unassigned suppliers.
Cause
- Due to OData V2 protocol limitations, applying a $filter inside $expand is not supported; such filters are ignored or not applied as intended.
- Filtering on a navigation property from the main entity does not restrict the main result set unless all related entries match, leading to unexpected or empty expanded data.
Resolution
- Avoid placing filters inside $expand for navigation collections.
- Query bidder data directly:
- Call the bidder entity set and apply filters for both the RequestForQuotation ID and Supplier to retrieve only relevant bidders.
- Alternatively, filter the main entity using any():
- Apply $filter with _RequestForQuotationBidder/any(b: b/Supplier eq 'the id') on the RequestForQuotation entity set.
- Use $expand=_RequestForQuotationBidder to include only bidders related to the filtered RFQs.
- Optionally, use $select to limit the response to only the required fields.
Keywords
api_ce_requestforquotation_0001, rfq api, _requestforquotationbidder, odata expand filter, supplier filter, navigation property filter, empty expand result, expand filter ignored, any() function, odata v2 limitation, rfq bidder, odata query, related entity filtering, expand and filter, procurement api , KBA , MM-FIO-PUR-RFQ-2CL , Fiori UI for RFQ/Quotation (Public Cloud) , Problem
Product
SAP S/4HANA Cloud Public Edition all versions
SAP Knowledge Base Article - Public