ABAP CDS (Core Data Services) Views are a modern data modeling framework in SAP development that allows developers to define database views enriched with business semantics, annotations, and associations — directly on the application server. Unlike traditional ABAP Open SQL queries or database-level views, CDS views push data-intensive operations down to the SAP HANA database layer, dramatically improving query performance while making data models reusable across Fiori apps, OData services, and analytics tools.
CDS Views are written using a SQL-like DDL (Data Definition Language) syntax inside the ABAP Development Tools (ADT) in Eclipse. They are the foundation of SAP’s RAP (RESTful Application Programming) model and Virtual Data Models (VDMs) in S/4HANA — understanding CDS is now a baseline competency for any SAP ABAP developer working in modern SAP landscapes.
Table of Contents
ABAP CDS views are database view definitions managed at the ABAP application layer rather than directly in the database. This distinction matters because:
The most significant performance advantage of CDS views is code push-down: complex calculations, aggregations, and joins are executed directly in SAP HANA’s in-memory engine rather than in the ABAP application layer. This eliminates the “select everything and filter in ABAP” anti-pattern that caused performance problems in older SAP systems. For large data sets, the difference can be orders of magnitude.
Annotations are metadata directives embedded in CDS source code that communicate intent to consuming frameworks. Examples:
@AbapCatalog.sqlViewName
@OData.publish: true
@UI.lineItem
@Analytics.dataCategory
@AccessControl.authorizationCheck
Associations define relationships between CDS views declaratively. Unlike hardcoded JOINs, associations are only resolved when a consuming view or query actually navigates the path — making data models more flexible and preventing unnecessary database reads.
CDS views can be exposed as OData V2 or V4 services with minimal additional configuration. In the RAP model, a CDS view with the right annotations and a behavior definition becomes a full Create-Read-Update-Delete (CRUD) OData service that Fiori apps consume directly.
SAP’s Virtual Data Model (VDM) in S/4HANA organizes CDS views into three layers:
Basic views sit directly on top of physical SAP database tables (like BKPF, VBAK, MARA). They define the raw data exposure with minimal business logic — primarily field selection, type casting, and simple calculations. Basic views are the foundation that composite and consumption views build on.
Composite views combine multiple basic views to build richer data models representing meaningful business entities. This is where joins between documents, currency conversions, and business-specific logic are applied.
Consumption views are optimized for specific UI scenarios (Fiori apps, reports) or API surfaces. They carry the heaviest annotation load — UI annotations, search annotations, and analytics annotations that directly drive application behavior.
CDS views are the data model foundation of SAP’s RESTful ABAP Programming Model (RAP) — the recommended approach for building transactional SAP Fiori apps in S/4HANA. In RAP, a CDS view defines the data structure, a Behavior Definition specifies which CRUD operations are supported, and a Behavior Implementation class provides the ABAP logic.
For teams new to CDS, the SAP Community ABAP topic page provides structured learning paths. Our SAP ABAP consultants can also provide hands-on guidance.
CDS views are used to define reusable, semantically rich data models in SAP systems. They power Fiori applications, OData APIs, analytics reports, and form the data layer of RAP-based transactional apps. They replace older data access patterns with a centralized, maintainable data modeling approach.
ABAP CDS views can be defined and used on non-HANA databases, but their full performance potential — especially code push-down for complex aggregations — is realized only on SAP HANA. In S/4HANA environments (which mandate HANA), CDS views are the standard data modeling approach.
Database views (SE11) are defined at the database level with no business semantics beyond field mappings and join conditions. CDS views are defined at the ABAP application layer, carry annotations, support associations, can include calculated fields and currency conversions, and integrate with the entire SAP application framework.
Yes. SAP S/4HANA’s entire Virtual Data Model is built using CDS views. SAP delivers thousands of CDS views in S/4HANA that expose business data for reporting, APIs, and Fiori apps. Custom development in S/4HANA is expected to follow the same CDS-based approach.
Use a CDS view when your goal is to read and expose data — for reporting, analytics, Fiori UI, or OData APIs. Use an ABAP class or function module when you need to write business logic that modifies data, handles complex control flow, or processes transactions. In RAP, CDS views handle the data model while behavior classes handle the transactional logic — the two complement each other.
Fiori apps built on the List Report and Object Page floorplans read their data directly from CDS consumption views annotated with @UI annotations. The Fiori Elements framework automatically generates the UI layout based on these annotations, without requiring custom frontend coding. This is why understanding CDS annotations is essential for any team building Fiori apps in S/4HANA.
@UI
Open SQL is the query language used inside ABAP programs to read data from database tables. CDS views are persistent, named view objects that can be queried via Open SQL — but they also carry metadata (annotations), associations, and push-down logic that simple Open SQL SELECT statements cannot express. Think of CDS views as reusable, annotated data models built on top of the same database tables that Open SQL reads.
SAP Fiori Consultant Emrah Tezcan, who serves as an SAP ABAP & Fiori Consultant at MDP Group, is a highly skilled SAP expert developing enterprise solutions based on ABAP Cloud and the RAP (RESTful ABAP Programming Model) on the S/4HANA architecture. With deep expertise in extensibility approaches aligned with the Clean Core strategy, HANA Output Management, Adobe Forms, and Flexible Workflow processes, Tezcan takes end-to-end responsibility across the entire software development lifecycle (SDLC), from analysis and design to testing/UAT, go-live, and post-production support.
How to Build an Enterprise AI Product
Almost every week, we witness a business leader sits down with us and says: “We have a great idea. We want to build an AI solution that handles...
What is New for SAP Integration Suite?
SAP Integration Suite is constantly evolving and adding new features to help businesses accelerate their digital transformation journeys. In this...
What is Yard Management?
Yard management is a logistics strategy that is used to track, manage, and optimize the flow of vehicles, trailers, containers, and other assets in...
Migration from SAP PO to SAP Integration Suite
What is SAP Integration Suite?SAP Integration Suite (formerly SAP Cloud Platform Integration) is an integration platform that enables companies to...
Enhancing Feedback Management Leveraging AI
In today's fast-paced business environment, suggestions and feedback from workers in the field can be a critical source of valuable information....
Understanding Open-Source Large Language Models
Open-source large language models give individuals and organizations full control over their data, infrastructure, and AI capabilities, offering a...
ABAP CDS Views: Complete Introduction and Developer Guide (2026)
ABAP CDS (Core Data Services) Views are a modern data modeling framework in SAP development that allows developers to define database views enriched...
ATC Check for ABAP Cloud
During the transition from the on-premise environment to the cloud, core capabilities that enable cloud-based use of ATC to ensure centralized ABAP...
Using SAP EWM with RFUI for Efficient Warehouse Management
Overview of SAP EWM with RFUISAP EWM with RFUI is an advanced solution designed to manage complex and large-scale warehouse operations across various...
Your mail has been sent successfully. You will be contacted as soon as possible.
Your message could not be delivered! Please try again later.