1. What is Core Data Services ?
To take advantage of SAP HANA for application development, SAP
introduced a new data modeling infrastructure known as Core data
services. With CDS, data models are defined and consumed on
database server rather than on application server. CDS also offers
capabilities beyond the traditional data modeling tools, including support
for conceptual modeling and relationship definitions, built-in functions,
and extensions. Originally, CDS was available only in the design-time
and runtime environment of SAP HANA. Now, the CDS concept is also
fully implemented in SAP NetWeaver AS ABAP, enabling developers to
work in the ABAP layer with ABAP development tools while the code
execution is pushed down to the database.
2. Core Data Services Architecture
Next generation of data definition and access for
database-centric applications
Optimized application programming model for all
domains (transactional, analytical,…)
CDS is supported natively in both the ABAP and the
HANA Platforms !
Technically an extension to SQL: –
o Expressions –
o Domain-specific metadata –
o Associations
CDS includes –
o Data Definition Language (DDL) –
o Query language (QL) –
o Data Manipulation Language (DML) –
o Data control language (DCL)
Core Data Services
3. Core Data Services
Code-to-Data paradigm
o Supported through extended view functionality
Definition of semantically rich data
models in the ABAP Dictionary
o ABAP ‘view entities’ in DDL source objects
(R3TR DDLS)
Fully integrated into the ABAP
infrastructure
o Consistent lifecycle management with all
other ABAP artifacts
Consumption via Open SQL on view
entities
4. ABAP CDS Entities
Definition of an ABAP CDS View
o ABAP CDS provides a framework for defining
and consuming semantic data models on the
central database of the application server AS
ABAP.
o The specified data models are based on the
data definition language (DDL) and the data
control language (DCL) which are managed
by ABAP Dictionary. So, a CDS entity or the
enhancement of a CDS view is defined as
source code in the CDS data definition.
o To define an ABAP CDS entity, you first need
to create a DDL source as the relevant
development object with which you can use
the standard functions of the ABAP
Workbench – such as syntax check,
activation, or connecting to the Transport
Organizer..
5. CDS View- Definition & Consumption
o Definition in an ABAP DDL Source
(R3TR DDLS)
o Definition only possible with ABAP
Development Tools in Eclipse (not
via transaction SE11)
o Consumption via
Open SQL
Data Preview (context menu in ADT)
SAP List Viewer
SAP NetWeaver Gateway (Odata Model)
6. Core Data Services – Nested Views
o Views can also be nested and can be
consumed in the same way as normal view
o In the example view *WGTV_CR_SO is being
created based on inner join between another
view WGTV_EXP_CR and standard table
VBUK on key column vbeln
7. Core Data Services – Associations
o Definition of relationships between entities
o Association definition contains
Target entity
Cardinality [ … ] (optional)
Alias name (optional)
ON condition representing the JOIN
o Associations replace JOINs with
simple path expressions
o Usage of aliases improves readability /
model understanding
o Path expressions support
simplified consumption
easy refactoring of ON conditions