# Extracting data from SAP S/4HANA Cloud with released CDS views

> S/4HANA Cloud data extraction with released CDS views: C1 contract, @Analytics.dataExtraction, CDS extraction to Datasphere, key views and why not A_ APIs.

By ABAP for Agents · Updated 2026-11-09 · https://abapforagents.com/guides/s4hana-cloud-cds-extraction/

## TL;DR

- In SAP S/4HANA Cloud Public Edition you extract through C1-released CDS views annotated with @Analytics.dataExtraction.enabled. You don't get tables, SAPI extractors or SLT.
- Private edition and on-premise connect like classic S/4HANA. Custom CDS views and SLT are available there too.
- The runtime is ODP. Datasphere replication flows read these views from the CDS_EXTRACTION container through SAP_COM_0532, and the views need to be on an allowlist first.
- SAP's docs mark I_Product, I_Customer and I_Supplier as extraction-enabled with automatic delta. For G/L line items SAP documents I_GLAccountLineItemRawData. Check I_JournalEntryItem in your own system before you plan on it.
- A_ OData APIs are for documented transactional use. SAP's API Policy restricts large-scale extraction outside the pathways it provides for it.

"Can we just pull the tables?" isn't an option in SAP S/4HANA Cloud Public Edition. The supported way out is a set of CDS views that SAP has released for extraction, read through SAP's extraction runtime by SAP Datasphere, SAP BW/4HANA or another consumer that SAP supports.

This guide covers what makes a CDS view extractable, how the public and private editions differ, the route into Datasphere, the key master and finance views, why the A_ OData APIs are the wrong tool for bulk loads, and how to find extraction views yourself. Every statement comes from SAP's documentation on the SAP Help Portal, SAP Learning and SAP's API Policy, all linked under [Sources](#sources). **We haven't tested this against a real SAP system.** View names, communication scenarios and container names change between releases, so check them in your own tenant.

## Public edition vs private edition

**SAP S/4HANA Cloud Public Edition** is the strict case. SAP Data Intelligence's documentation says it directly: "For SAP S/4HANA Cloud, only standard ABAP CDS views that are C1-released can be integrated." SAP Learning's table of Datasphere replication sources shows the same picture. For S/4HANA Cloud, the only containers are **CDS_EXTRACTION** (released extraction views) and **SQL_SERVICE** (views exposed through the ABAP SQL service). ODP_SAPI extractors and SLT appear only for on-premise sources.

**SAP S/4HANA Cloud Private Edition** connects like SAP S/4HANA on-premise. SAP's Green Ledger documentation, for example, groups "SAP S/4HANA Cloud Private Edition, or SAP S/4HANA" under on-premise connections and gives public edition its own section. On those systems the Data Intelligence docs add two options that public edition lacks: you can create your own extraction-enabled CDS views, and SLT is available.

Even on private edition and on-premise, released extraction views are the upgrade-safe choice. The ABAP Keyword Documentation says extraction views should be released to contract C1 "to guarantee compatibility … when the S/4HANA system is upgraded".

## What makes a CDS view extractable

Three things together, all from SAP's documentation:

- **Release.** The view is released with the C1 stability contract. The ABAP Keyword Documentation adds that you also choose the visibility "Use in Key User Apps", and that "Only C1-released extraction view with this visibility will be exposed in S/4HANA CE" (cloud edition).
- **`@Analytics.dataExtraction.enabled: true`.** This marks the view as suitable for replication. SAP's Data Integration page explains that this annotation enables full loads and `@Analytics.dataExtraction.delta` enables delta loads. Datasphere's trigger-based change data capture uses `delta.changeDataCapture.automatic` for simple projections and `delta.changeDataCapture.mapping` for views with joins.
- **Only the field list travels.** "Only the fields included in the field list of the view are available … Associations are not exposed via data extraction." If you need a field from an association, you need a view that projects it.

SAP also says "only a subset of the documented CDS views is enabled for data extraction". A released view isn't automatically an extraction view.

## How the extraction runs: ODP, CDI and the ABAP Pipeline Engine

SAP's Architecture Overview for Data Integration names **ODP** as the extraction runtime and describes two ways to call it from S/4HANA Cloud Public Edition:

| Route | Communication scenario | Notes from SAP |
|---|---|---|
| ABAP Pipeline Engine | `SAP_COM_0532` (WebSocket RFC) | "Recommended in most cases" |
| Cloud Data Integration (CDI) | `SAP_COM_0531` (OData V4) | Slower. Datasphere's connection docs label it legacy |

"The same set of released ABAP CDS extraction views is available for both." SAP BW/4HANA connects through `SAP_COM_0042` (RFC/ODP). Consumers named in SAP's architecture page include SAP BW, BW/4HANA, Data Intelligence, Datasphere, HANA and HANA Cloud.

The **ABAP SQL service** is a separate route. SAP calls it "the strategic mechanism for exposing CDS view entities to external SQL consumers", and Datasphere's connectivity page recommends it for replication and federation. It has its own setup and isn't the ODP route this guide describes.

## Into SAP Datasphere, step by step

SAP's "Integrating CDS Views Using SAP Datasphere" lists the steps for public edition with `SAP_COM_0532`:

1. Create a communication user.
2. Create a communication system (inbound only) for Datasphere.
3. Create a communication arrangement for `SAP_COM_0532`.
4. **Allowlist the views.** Maintain an authorization group with the CDS views you allow ("Define Allowlists for CDS View Extraction"). Views that aren't in it don't appear in the CDS_EXTRACTION folder. The ABAP SQL service doesn't use this allowlist.
5. In Datasphere, create a connection of type SAP ABAP with protocol RFC.
6. Build a replication flow on the CDS_EXTRACTION container. SAP Learning lists the load types: Initial Only, Initial and Delta, Delta Only.

Step 4 is where most "the view isn't there" questions end. It's a customizing step in the S/4HANA system, not in Datasphere.

## Key views for master data and finance

What SAP's S/4HANA Cloud Public Edition CDS documentation (release 2608) says about four views that people often ask for:

| View | What it is | Extraction status in SAP's docs |
|---|---|---|
| `I_Product` | Product master | Released. "Enabled for data extraction in full mode as well as in delta mode. Deltas are determined automatically by change data capture." |
| `I_Customer` | Customer master (dimension) | Same statement: full and delta, automatic CDC |
| `I_Supplier` | Supplier master (dimension) | Same statement: full and delta, automatic CDC |
| `I_JournalEntryItem` | Journal entry items from table ACDOCA (cube) | Released. Its documentation page has no data extraction section, so verify it before planning on it |

For **G/L line items**, SAP documents `I_GLAccountLineItemRawData` with extraction type "Full" plus CDC delta on table ACDOCA. SAP's own Green Ledger content replicates that view to Datasphere. Two points from its page: it returns line items "without the ledger", so for extension ledgers you join `I_LedgerSourceLedger`, and it includes balance carry-forward postings. `I_JournalEntryItem`, by contrast, "does not expose technical balance carried forward items of period 000". The two views won't add up to the same balances unless you handle that.

For open receivables and payables, SAP's Datasphere content builds on a replication flow of `I_OperationalAcctgDocItem`, which is sourced from BSEG. See [replacing SELECT on BSEG](https://abapforagents.com/guides/replace-bseg-select-acdoca/) for how the finance views relate.

## Why not the A_ OData APIs?

The A_ entities, such as `A_Product` or `A_BusinessPartner`, are published OData APIs for integrating transactional processes. SAP's API Policy says published APIs are for "Documented Use". Among the possible controls, it lists "limits and preconditions for bulk extraction / replication". In section 2.2.2 it says that "except through and within the limits of SAP-endorsed architectures, data services, or service-specific pathways expressly identified and intended for such purposes, SAP prohibits API use for … scraping, harvesting, or systematic and/or large-scale data extraction or replication". The policy also allows throttling or suspension.

The practical reading: use the extraction views and the ODP route above for bulk loads and deltas, and keep the A_ APIs for what they're documented for. SAP says the same about custom OData exposure in a related product: "the External API scenario is not intended for one-off mass data extraction", and calls should "limit the requested data with appropriate filters and/or paging".

## Finding extraction views yourself

- **SAP Business Accelerator Hub.** SAP's Data Integration page says the Hub "shows released CDS views and also indicates whether an individual CDS view is enabled for data extraction". Look for **Data Source for Data Extraction** under Supported Capabilities.
- **View Browser app.** In the tenant, the View Browser shows whether a view is extraction-enabled.
- **`I_DataExtractionEnabledView`.** A CDS view that lists the extraction-enabled views, with `DataExtractionViewName`, `DeltaChgDataCaptureIsSupported` and `IsSAPReleasedView`. SAP documents it for S/4HANA Cloud and for S/4HANA from 2020.
- **SAP Help per view.** Each view page in the S/4HANA Cloud CDS documentation has a "Data Extraction" section when the view is extraction-enabled, as shown for `I_Product`, `I_Customer` and `I_Supplier` above.

If you use an AI assistant to write extraction views or queries, give it these limits up front. Assistants often suggest table reads or A_ API paging loops, which run into exactly the limits described above. [The 10 mistakes AI makes in ABAP](https://abapforagents.com/guides/ai-abap-mistakes/) and [Claude Code and AGENTS.md for ABAP](https://abapforagents.com/guides/claude-code-agents-md-abap/) show how to keep such rules in the agent's context, and the free [abap-for-agents-lite](https://github.com/abapforagents/abap-for-agents-lite) rules are a starting point.

## Sources

- ABAP Keyword Documentation 8.16: [Analytics.dataExtraction.enabled](https://help.sap.com/doc/abapdocu_816_index_htm/8.16/en-US/ABENCDS_2140431020_ANNO.html)
- SAP S/4HANA Cloud Public Edition (2608): [Data Integration](https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/c3a5da91691d4ebd89748d9f40af7a4c.html), [Architecture Overview for Data Integration](https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/36b7901040cb4c18b557ca9cc90a7002.html) and [Integrating CDS Views Using SAP Datasphere](https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/f509eddda867452db9631dae1ae442a3.html)
- SAP S/4HANA Cloud Public Edition CDS views (2608): [Product](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/af5c379f422e495c825802fcb9b0731f.html), [Customer](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/a11849401368469fb9e7dfb34f44e9c7.html), [Supplier](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/91c2229c60064cc1bfc621b879435174.html), [Journal Entry Item](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/47dce95760521070e10000000a44147b.html), [G/L Account Line Item - Raw Data](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/7fe239a3f2214e2cb36e90d453eee6d3.html) and [CDS Views Enabled for Data Extraction](https://help.sap.com/docs/SAP_S4HANA_CLOUD/c0c54048d35849128be8e872df5bea6d/870d66c6bfc44d6c9f128c888f0c7957.html)
- SAP Datasphere: [Prepare Connectivity to SAP S/4HANA Cloud](https://help.sap.com/docs/SAP_DATASPHERE/9f804b8efa8043539289f42f372c4862/abb159e027184c98a54fc1b2a88dd3f5.html) and [Operational Accounting Document Item](https://help.sap.com/docs/SAP_DATASPHERE/6eb1eff34e4c4b1f90adfbfba1334240/a88ae4e56bfc1014a79e69594ccc91ad.html)
- SAP Learning: [Working with Replication Flows](https://learning.sap.com/courses/exploring-sap-datasphere-1/working-with-replication-flows_f38ca7cf-56b7-43a0-a8ae-62da2e0613b2)
- SAP Data Intelligence: [Enabling the Data Source](https://help.sap.com/docs/SAP_DATA_INTELLIGENCE_ON-PREMISE/1c4ff4486dd04e47b32fe406111bfee8/a8368bcec0b94ad5a5ea975167226eee.html)
- SAP Green Ledger: [Integrate with SAP Datasphere](https://help.sap.com/docs/SAP_Green_Ledger/275111bbd8614e939fe0a0942f81c143/0844a2c513164903848c49f85c8ab8bf.html)
- [SAP API Policy](https://help.sap.com/doc/sap-api-policy/latest/en-US/API_Policy_latest.pdf), sections 1.1, 2.1, 2.2.2 and 3
- SAP Marketing Cloud: [External API: Exposing a Custom CDS View as OData API](https://help.sap.com/docs/SAP_MARKETING_CLOUD/e0cd7c1ecf3d4f2f9feb46ec1c5b68fb/f4dcfd6e14b54177b98d6099ddb2014e.html)
- Free lite rules (MIT): [abap-for-agents-lite on GitHub](https://github.com/abapforagents/abap-for-agents-lite)

## Get the rules

Start with the free rules: ABAP for Agents Lite (MIT), for Cursor, Claude Code, GitHub Copilot, Windsurf and AGENTS.md: https://github.com/abapforagents/abap-for-agents-lite (ZIP: https://github.com/abapforagents/abap-for-agents-lite/releases/latest/download/abap-for-agents-lite.zip).

The full Rules Pack (v1.1) has 300+ rules across 20 topics (adding performance, security, RAP, CDS, OData and Fiori, ABAP Cloud and clean core, LUW and locks, BAPIs, ABAP Unit and S/4HANA migration) plus 8 agent skills, with free updates: 19 € at launch (29 € after), https://abapforagents.com/#pricing
