Connection to SAP OData via SAP BTP (Cloud Integration)
When connecting the DQC Platform to an SAP ECC or SAP S/4HANA system without opening direct database access (SAP HANA) or deploying the DQC Proxy, you can expose your SAP data as an OData v2 or v4 service through SAP BTP Cloud Integration (CPI / SAP Integration Suite) and connect using the DQC OData Connector.
No custom DQC ABAP RFC package required: Unlike the SAP RFC connector, connecting via SAP BTP (CPI) OData does not require installing the Z_DQC_* ABAP function modules or the DQC Proxy in your landscape.
For an overview of all ways to bring SAP data into DQC, see Connecting to SAP systems.
Architecture overview
DQC Platform (OData Connector)
│ HTTPS (OAuth 2.0 Client Credentials / Basic Auth)
▼
SAP BTP Cloud Integration (CPI) — OData API Artifact (/gw/odata/SAP/<Service>;v=1)
│ SAP Cloud Connector (RFC / OData / ODC / SOAP)
▼
SAP S/4HANA or SAP ECC (SAP Gateway / CDS View / BAPI / RFC)In SAP Cloud Integration, you can either:
Pass through an existing SAP Gateway OData service (created via
SEGW, ABAP CDS@OData.publish: true, or ABAP RAP), orBuild an OData API Project in SAP Cloud Integration that maps OData
Query(GET) operations to an on-premise SAP Gateway service, BAPI, or RFC function module via the SAP Cloud Connector.
Technical requirements for the SAP BTP (CPI) OData service
Because SAP Cloud Integration OData API projects often use custom integration flows (iFlows) to map backend data, make sure the OData service fulfills the following five requirements expected by the DQC OData Connector:
# | Requirement | Details |
|---|---|---|
1 | Valid $metadata document ( | Must return a valid OData v2 or v4 EDMX schema listing the |
2 | Flat properties on each EntityType | All columns to be checked in DQC must be exposed as flat |
3 | Row count endpoint ( | Mandatory for OData v2: The CPI integration flow must implement the |
4 | Pagination support ( | For tables larger than a single page, the |
5 | Clean base Service URL | Use the base URL of the deployed CPI OData runtime artifact (for example |
Prerequisites in SAP BTP Cockpit
Deploy the OData API artifact in SAP Cloud Integration and copy the runtime endpoint URL from Monitor → Integrations and APIs → Manage Integration Content (format:
https://<cpi-runtime-host>/gw/odata/SAP/<Service_Name>;v=1).Create OAuth 2.0 credentials (recommended): In your SAP BTP Cockpit subaccount, go to Instances and Subscriptions, create a Service Instance for Process Integration Runtime with service plan
integration-flowand assign theESBMessaging.sendrole. Create a Service Key for that instance and noteoauth.clientid,oauth.clientsecret, andoauth.tokenurl(for examplehttps://<subdomain>.authentication.<region>.hana.ondemand.com/oauth/token).Allowlist the DQC outbound IP address (if applicable): If your SAP BTP environment or API Management layer restricts inbound traffic by IP address, allowlist the DQC Platform's static outbound IP:
3.123.94.228.
Configure the connector in the DQC Platform
Go to the Data Connectors screen and click OData Server.
Fill in the connection fields:
Field | Example / Value | Description |
|---|---|---|
Connector Name |
| Display name of the connector in DQC |
Service URL |
| Base URL of the deployed CPI OData service (without |
OData Version |
|
|
Authentication Method |
|
|
OAuth Client ID |
| Client ID from the SAP BTP Process Integration Runtime Service Key |
OAuth Client Secret |
| Client Secret from the SAP BTP Process Integration Runtime Service Key |
OAuth Token URL |
| XSUAA token endpoint ( |
OAuth Scope | (optional) | Leave empty unless your XSUAA configuration requires a specific scope |
Click Load Tables, select the SAP EntitySets you want to validate, and click Connect.
Troubleshooting
Symptom | Likely cause | Fix |
|---|---|---|
Load Tables succeeds, but the list of tables is empty | For OData v2, | Ensure the CPI OData |
One or more EntitySets are missing from the table list | The | Remove duplicate property names in the OData EDMX model in SAP Cloud Integration so each property name in an |
Only the first page of rows is loaded, or rows are duplicated across pages | The CPI iFlow maps to an RFC/BAPI or SOAP backend and ignores | Forward |
| OAuth 2.0 token URL or credentials are wrong, or the BTP service instance lacks | Verify |
Fields starting with | Navigation properties ( | Expose all columns to be validated as flat |
For general OData error messages in DQC, see Connection to OData — Troubleshooting. Learn more: Connecting to SAP systems, Connection to SAP HANA, Connection to SAP RFC, Supported data sources.