This is a test message to test the length of the message box.
ABAP CDS Virtual data model
Created by Software-Heroes

CDS - Virtual data model


The virtual data model is an important part of the S/4 landscape and serves as the basis for Fiori applications and applications within the system.

In the last article we talked about the basics of Core Data Services and showed the advantages of a virtual data model. We have already talked about the interface view without explaining what it is actually all about.



The virtual data model, VDM for short, is an abstract layer of views between the database with the individual tables and the application with which the user is working. In addition, a small overview consisting of three tables and two applications and the virtual data model in between.


We distinguish between the three layers Interface, Composite and Consumption. More information on this in the following sections.



Describes the lowest layer of the VDM and is located just above the table. An interface view maps exactly one table. In the interface, you have the option of normalizing the field names and converting short field names into meaningful English names. All fields of the database should be present in an interface view in order to serve as a basis for other views.

Examples of CDS views from a standard system are:

  • I_CompanyCode (T001)



The composite view is an optional layer in the data model and does not always have to be present. The name can also be confused with Interface Views. Composite views usually combine several tables and make the data available. In this step, the fields are no longer normalized, interface views are used as a basis.

Examples of CDS views from a standard system are:

  • I_MDGovBPFltr (Business Partner Filter for MDG)



The Consumption View describes the last layer of the VDM and is usually tailored to exactly one application. The fields are restricted accordingly for the application and only required information is made available to the application. Possible aggregations are also active on this level, so reuse for other applications is rarely worthwhile (performance).

This level can also be integrated with BOPF to provide write access and other functions for the app.

Examples of CDS views from a standard system are:

  • C_ServiceEntrySheetWD


CDS Navigator

As you can see below the example CDS views above, we have once shown the definition of the dependencies. In Eclipse you can use the "CDS Navigator" view and the "Dependency Analyzer" function to get information about the structure and complexity of the CDS view. From a manageable level, many dependencies can quickly arise.


View Browser

The View Browser (F2170) is a FIori App and belongs to the Extensibility Tools. With the help of this app you can find the different levels of views and also get the release status. The search works via table fields, tables or other CDS views that may have dependencies.


If you don't know whether there is a view for a table, you can use the app to search for suitable views and limit the result to "Basic" views.



The views are separated from each other based on the naming convention and the content, but the views can be equipped with an additional annotation to make them easier to find and to give a better impression. The @VDM annotation offers different values for the virtual data model and you can use them to classify your view.




Understanding the virtual data model is an important step in understanding the new data architecture in an S/4 system and how applications are built. You will find the three layers of the data model again and again in applications in the future, especially if they were built with RAP.

Included topics:
CDSCore Data ServiceVirtual data modelVDM
Comments (0)

And further ...

Are you satisfied with the content of the article? We post new content in the ABAP area every Friday and irregularly in all other areas. Take a look at our tools and apps, we provide them free of charge.

ABAP Tools - Work with Eclipse (CDS Analysis)

Category - ABAP

In the complex world of CDS views, it is important to have the right tool at hand to ensure an analysis of the structures and data sources.


CDS - View Entity

Category - ABAP

In this article you will learn more about the new Core Data Service entities, what they bring and what makes them different from the old views.


CDS - Learnings

Category - ABAP

In this article we summarize the learned content and show you the way for what you will need the CDS Views in the future.


CDS - Virtual fields

Category - ABAP

This article is about virtual fields in Core Data Services and how you can subsequently deliver such complex data.


CDS - Authority check

Category - ABAP

How and where are the permissions for a Core Data Service delimited? Check out this article for the details.