Symptom
You are performing a GET call using filters, and even though the call works correctly on browser/postman, the Excel Odata feed returns the error "Mandatory parameter 'BusinessObject' not specified".
Environment
SAP Cloud for Customer
Reproducing the Issue
With Excel Open:
- Change the tab to "Data."
- Click on "Get Data".
- From Other Sources.
- From OData feed.
- Paste the GET call.
- Error is returned.
Cause
The collection related to Change Documents needs to have "BusinessObject" as a mandatory parameter and excel fails to read it in case this parameter is declared before other filters.
Resolution
The parameter BusinessObject needs to be the last parameter in the filter, ex:
https://myxxxxx.crm.ondemand.com/sap/c4c/odata/v1/changedoclist/ChangeDocumentCollection?$filter=BusinessObject eq 'ServiceRequest' and (ChangeDateTime ge datetime'2023-11-20T00:00:00' and ChangeDateTime le datetime'2023-11-21T00:00:00')
The above will trigger an error.
https://myxxxxx.crm.ondemand.com/sap/c4c/odata/v1/changedoclist/ChangeDocumentCollection?$filter=(ChangeDateTime ge datetime'2023-11-20T00:00:00' and ChangeDateTime le datetime'2023-11-21T00:00:00') and BusinessObject eq 'Ticket'
The above will be triggered correctly, no errors.
Keywords
Excel; OData; call, BO; work, center; change Doc. , KBA , LOD-CRM-INT-API , OData API (C4C Only) , SRD-CC-OIN-XL , Excel Integration , Known Error