Finding the right CDS Extractor in SAP S/4HANA
Dear Data Warehouse enthusiasts,
SAP ABAP Core Data Services (CDS) is a core technology for data modeling in SAP S/4HANA. Due to the fact, that SAP S/4HANA cloud edition does not provide the classic ABAP extractors (aka DataSources) for consumption, the clear requirement to set up new extraction options based on this concept has emerged in the last years. As you can see in the numbers below, this area has received tremendous innovation recently.
Number of released CDS extractors in SAP S/4HANA on premise
(Note: the cloud edition reflects the similar evolution with probably even more objects)
– release 2019: ~500 extractors (about 10% delta capable)
– release 2020: ~1100 extractors (about 10% delta capable)
– release 2021: ~1800 extractors (about 15% delta capable)
Based on these numbers, one simple question arises from a BW or Data Warehouse Cloud perspective: Where can I find a list of available CDS Extractors delivered by SAP?
Well, this is why I authored this blog post: Simply because there is no simple answer to this question. If there would be a comprehensive offline documentation in help.sap.com or similar, this question could be answered easily. So in a nutshell, the purpose of this blog post is to provide possible solution approaches.
To start with, you need access to an SAP S/4HANA system to analyze the CDS objects; to be precise you require
- access to SAP S/4HANA via SAP GUI and authorizations for Tr. SE16 and SE11 (steps 1-3),
- access to SAP S/4HANA Fiori Launchpad and the app “View Browser” (e.g. via role SAP_BR_Analytics_Specialist) (step 4), and
- access to SAP S/4HANA via Eclipse/ABAP Development Tools (ADT) and the authorization to view ABAP development objects (step 5).
There is a high-level list of all CDS extractors in each SAP S/4HANA system starting from releases in 2020. It is based on CDS View I_DataExtractionEnabledView and you can easily call it in the Data Browser (SE16) based on its ABAP DDIC name IXTRCTNENBLDVW. It lists all CDS extractors with two filter options:
- Is the object released or not? We recommend sticking to the released ones, they are stable and there is no risk they will behave differently after an upgrade. See also this blog post.
- Is the object CDC enabled or not? This means it is a delta enabled extractor based on the sophisticated Change Data Capturing concept. See also SAP note 2991278.
Note: As an alternative you can also use DHCDCVCDSEXTRE in SE16 which contains more or less the same information.
A well-hidden feature – but providing a great value-added – is accessible in the ABAP Development Tools (ADT). As I said in the beginning, you need a local SAP HANA Studio or Eclipse installation to work these tools, so it is probably only available for developers. Here, where you maintain all CDS objects, you can easily search for one object and open it with the so-called Dependency Analyzer: This function disassembles the whole data model and provides an easy-to-understand overview of it, i.e. you see clearly from which source SAP S/4HANA tables the CDS extractor takes the data.
In my example, you see that the CMMPOITMDX reads through up to four layers of CDS views and finally reads from MM purchase order tables EKKO, EKPO, as well as general tables T001 and TKA02.
CDS-based SAP S/4HANA extraction keeps evolving as more and more SAP systems are migrated to SAP S/4HANA. I hope this blog post provides a useful guide how to evaluate SAP delivered CDS extractors which might be the proper interface for your SAP BW or SAP Data Warehouse Cloud applications now and in future.
- SAP documentation of CDS Annotations
- Blog Post: CDS Based Data Extraction
- Blog Post: Discover CDS View Based Extractors from SAP S/4HANA Cloud