CDS View Entities vs. DDIC-Based CDS Views

CDS View Entities vs. DDIC-Based CDS Views

Published at August 27, 2025by

Jörg Brandeis

Introduction

The CDS View Entities are currently celebrating their 5th birthday. On September 2, 2020 I found the first blog post A new generation of CDS Views: CDS view entities on the SAP Community Network on this topic.

Classic CDS Views (aka. DDIC Based CDS Views) have been obsolete since ABAP 7.57 (S/4HANA 2022). This is a good reason to take a closer look at the history and differences between the two objects.

What happened so far – a look back at the past

2012 – The first CDS objects were for SAP HANA

In order to define views and tables on the XS(C) application server of the HANA database, a concept was needed for storing these objects in a repository. The result was HANA CDS – Core Data Services. Based on the idea of the DDIC, HANA CDS also contains semantic information about the application. The objects were defined in HANA SQL, enriched with annotations and associations.

2014 – CDS Views in ABAP

CDS Views were introduced in ABAP with NetWeaver 7.40 SP05. Now it was possible to define CDS directly in the ABAP stack, with seamless integration into the ABAP Dictionary.

  • Syntax based on ABAP SQL
  • Semantic information is added by annotations
  • Defined in source code files in the ABAP Development Tools
  • Close integration with ABAP SQL: CDS Views can be selected like tables.
  • Enables code pushdown: Logic runs in the HANA DB, not in ABAP.
  • Support for Any-DB, including Oracle, IBM, etc.

2015 – Virtual Data Model (VDM) in S/4HANA

With the introduction of S/4HANA, CDS took on a central role in SAP data modeling. The Virtual Data Model (VDM) contains thousands of preconfigured CDS Views as a basis for reporting, Fiori apps, and APIs.

CDS becomes the basis of all frameworks in the ABAP stack:

  • OData services
  • Embedded analytics
  • BW extraction
  • Interface creation with Fiori Elements
  • Enterprise search

2019 – The RESTful Application Programming Model ABAP (RAP) is based on CDS

2020 – CDS view entities replace DDIC-based CDS Views

And with S/4HANA 2022, classic CDS Views will become obsolete

What was wrong with classic CDS Views?

Two names

The first thing that irritated every developer about classic CDS Views was the two names:

  • CDS view name – 30 characters long,
  • SQL view name – 16 characters long, because it is actually the name of the DDIC view

Actually, the source code file could also have a different name, but hopefully no one did that. A look at the object catalog reveals that there are actually three different objects on the ABAP side:

Objects in TADIR for a CDS view

Overly strict consistency checks

In some places, the syntax was checked extremely strictly. My favorite example is this message:

This happens when you calculate the volume with length x width x height from MARA or I_Product.

Error message due to max. accuracy

Limited nesting of expressions, especially in SQL functions

In many places, there were syntax checking errors when functions were nested. SQL function length in CASE expression

What is the difference to CDS View Entity

While the DDIC Based CDS View had to run on Any-DB, the CDS View Entity could focus on the HANA database. This made the traditional abstraction layer between the different database management systems obsolete. The DDIC could be removed.

The following illustration shows this. The colors represent a name. In the classic, DDIC-based CDS view, we see two colors, while in the CDS View Entity, we see only one.

Comparison of CDS View Entities

What is better about the CDS View Entity

One name for everything

Both CDS View and SQL View have the same name – and it is 30 characters long. In analytical applications, i.e. wherever the @Analytics Framework appears as an annotation, the SQL view usually plays the leading role. Example:

  • View name for the BW extractors
  • Names of analytical InfoProviders and queries consist of the prefix 2C and the SQL view name

Reasonable consistency checks

Even if this is the documentation of the CDS View Entities I consider the consistency checks of the view entities to be more relaxed. In any case, however, I consider them to be more plausible. See above.

More features

The DDIC-based CDS Views have not been further developed for several years. However, there are still some improvements to be made to the CDS view entities. These include:

  • Improvements in nesting expressions – more and more is possible
  • Automatic client handling
  • Faster activation, because no DDIC view needs to be created anymore
  • You can refer to other columns of the view in expressions with $projection.

And should I migrate my DDIC-based CDS Views now?

That's not necessary. If they already do what they're supposed to do, then all the disadvantages are no longer relevant. And SAP also has thousands of classic CDS Views in the virtual data model, many of which are also C1-released. This means we can rest assured that they will continue to be supported for a very, very long time.

Conclusion

So far, I have not found a single disadvantage of CDS view entities compared to CDS Views. Therefore, there is no longer any reason to use classic CDS Views as long as you are on a corresponding system version.

More articles