Guide

SAP Tables vs CDS Views — Key Differences

Learn the difference between physical SAP DDIC tables and CDS Views, including when to use each and how CDS Views abstract the data model.

Physical Tables vs Virtual Views

SAP S/4HANA stores business data in physical database tables (also known as DDIC tables). These are the actual data containers on the SAP HANA database. CDS Views, on the other hand, are virtual — they do not store data but define how to read and transform data from tables at query time.

When to Use Tables

Direct table access is appropriate when:

  • You need raw, unprocessed data for data migration or troubleshooting
  • You are writing custom ABAP programs that need maximum performance
  • No suitable CDS View exists for your use case

Key SAP tables include BKPF (Accounting Document Header), VBAK (Sales Document Header), and the S/4HANA universal journal table ACDOCA.

When to Use CDS Views

CDS Views are the recommended access path for most scenarios because they:

  • Provide business-friendly field names and descriptions
  • Handle complex joins and aggregations transparently
  • Carry authorization checks (@AccessControl)
  • Are the foundation for OData services and Fiori apps
  • Offer stability through release contracts (C1)

Comparison Table

AspectDDIC TableCDS View
StoragePhysical (stores data)Virtual (reads data)
Field namesTechnical (e.g., BUKRS)Business-friendly (e.g., CompanyCode)
JoinsManual in codeBuilt into view definition
AuthorizationNone (table-level only)Row-level via @AccessControl
OData exposureNot directlyVia Service Definitions
StabilityMay change across releasesReleased views have C1 contract

How They Connect

CDS Views read from tables (and from other CDS Views). You can trace the complete data lineage — from a Consumption View down through Composite and Basic Views to the physical tables — using CDSee's Lineage and 3D Graph features.

Explore on CDSee