cdsanalyser
A search tool that maps SAP database tables and fields to the CDS view entities that expose them, and back, from an index a background job builds, for SAP S/4HANA on-premise or private cloud.
Finding the right CDS view for a known database table is the gap this closes: an application job, run from the template ZCDSSEARCH_BUILD_INDEX_TEMPL, analyses the CDS views in the system and stores the mapping in a dedicated database table so a later search hits an index rather than the metadata. Two ABAP packages carry it, one for the indexing core and the OData V4 service and one for the deployed Fiori BSP application, and the report ZGET_CDS_FOR_DB_FIELD gives the same lookup in SAP GUI. The index has to be built before the first search; the maintainer frames the whole tool as a Clean Core enabler, moving data access from direct table reads to CDS views.
Facts
Where it sits
Who is behind it
In the atlas: maintains 1, contributes to 1@agraebermaintainer
Before choosing this
Conditions
PracticalFunctional boundary
Not on the SAP BTP ABAP environmentSAP BTP ABAP environmentSAP's ABAP runtime on BTP: ABAP systems developed in the ABAP Cloud model on SAP HANA Cloud, for cloud apps, OData services and side-by-side extensions of SAP S/4HANA.sap official, btp or another cloud ABAP system: the maintainer states the tool is not cloud ready, because the data sources and system tables it reads CDS metadata from are not released for cloud development. It is designed for SAP S/4HANA on-premise or private cloud, and the shipped Fiori application is configured for A4H and developer systems.
What it declares
Every artifact
- Type
- App
- Origin
- Independently maintained
As an app
- Where it runs
- Inside the system it serves
- Distributed through
- does not say
Connections
Defining entities, their relations and the views services consume
Download
README
quoted from agraeber/cdsanalyser under GPL-3.0, readCDS & Table Field Search Tool (Clean Core Enabler)
This tool bridges the gap between traditional SAP database table knowledge and the modern Clean Core approach. It allows developers and consultants to find corresponding CDS View entities and fields based on familiar database tables and fields in seconds.
Caution
Cloud Readiness & Compatibility > This tool is unfortunatley NOT Cloud Ready (not for SAP BTP ABAP Environment / Steampunk).
Although it uses modern components like Application Jobs and OData V4, the underlying data sources and system tables for CDS metadata are NOT released for cloud development. It is designed for use on SAP S/4HANA On-Premise or Private Cloud environments.
Overview
As we move toward Clean Core, accessing data via CDS views instead of direct table access is essential. However, finding the right CDS view for a known DB table can be challenging. This repository provides a high-performance indexing engine and search UI to solve this.
Project Structure
The solution is organized into the following components:
- Package
ZCDS_SEARCH: Backend core, indexing logic, and OData V4 service. - Package
ZCDS_SEARCH_BSP: Deployed Fiori BSP Application (ZCDSANALYSE).
🚀 Prerequisites & Setup
To enable the background indexing engine, the following objects are included in the repository:
- Application Job Catalog Entry:
ZCDSSEARCH_BUILD_INDEX(bound to classZCL_CDSSEARCH_BUILD_INDEX). - Application Job Template:
ZCDSSEARCH_BUILD_INDEX_TEMPLbased on the catalog entry above.
🏗 Start of Analysis (Building the Index)
Before the first search, you must analyze the CDS views in your system to populate the search index.
- Execute the Indexer:
- Standard: Create and execute an Application Job based on Template
ZCDSSEARCH_BUILD_INDEX_TEMPL. - On-Premise Shortcut: Run Report
ZCDSSEARCH_BUILD_INDEX_VIA_JOBto trigger the indexing process via the Application Job.
- Standard: Create and execute an Application Job based on Template
- Result: The tool analyzes the requested CDS views and stores the mapping results in a dedicated database table for instant access.
🔍 How to Use
Modern UI (Fiori / OData)
The primary way to consume the data is via the OData V4 Service: ZUI_CDSFIELDINDEX_V4.
- Use the Service Preview to build your own dashboard.
- A pre-deployed Fiori App (
ZCDSANALYSE) is included (configured for A4H/Developer systems).
Classic UI (On-Premise Only)
For a quick search within the SAP GUI, use Report: ZGET_CDS_FOR_DB_FIELD.
This high-speed report allows you to:
- Find all database fields for any given CDS view field.
- Find the matching CDS view field for any given database table/field.
📖 Detailed Documentation
For a full technical deep dive and the story behind this tool, please refer to the SAP Community blog post:
🔗 How to find CDS views for DB table fields
Others providing
Compare all 9 on the Data modelling page →- ABAP CDSABAP CDSThe modelling layer of ABAP Cloud — view entities, projections and annotations defined above database tables, delivered with the platform rather than installed.sap official, abapModelling layer of ABAP Cloud above database tablesfrom ABAP
- cds-numberrange-plugincds-numberrange-pluginA CAP plugin that fills an annotated CDS element with the next number from a named range, optionally with prefix, suffix and padding, keeping the counter in a database entity it adds to the model.independent, capFills a CDS element from a database-backed number rangefrom CAP
- com.sap.cds:cds-services-bomcom.sap.cds:cds-services-bomThe Maven bill of materials for CAP Java, pinning every com.sap.cds module in a release, from the API and core runtime to the Spring Boot starters and the CQN engine, to the same version.sap official, capMaven bill of materials pinning CAP Java module versionsfrom CAP
- @sap/cds-common-content@sap/cds-common-contentISO-standard content for CAP's common definitions — countries, languages, currencies and timezones — so a project does not seed those tables itself.sap official, capISO content for CAP's countries, languages, currencies and timezonesfrom CAP
- @sap/cds-compiler@sap/cds-compilerCompiles CDS models to CSN, EDMX and database schemas.sap official, capCompiler from CDS models to CSN, EDMX and database schemasfrom CAP
- @sap/cds@sap/cdsThe CAP Node.js runtime, which compiles the CDS model, serves the services declared in it, answers generic requests before any handler runs, and loads every cds-plugin.sap official, capCAP Node.js runtimefrom CAP
- cap-user-infocap-user-infoResolves the createdBy and modifiedBy of a managed entity to a stored user record of email, given name and family name, and renders the two fields as links with a quickview.independent, capUser details and quickview links for createdBy and modifiedByfrom CAP
- CDS Field MappingCDS Field MappingLooks up which Core Data Services entity and field a classic dictionary table and field map to, filterable by whether the target CDS view is released.independent, abapMaps classic dictionary tables and fields to CDS entities and fieldsfrom ABAP
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
abaplint
Flavors
“This tool is unfortunatley **NOT Cloud Ready (not for SAP BTP ABAP Environment / Steampunk)**.” — agraeber/cdsanalyser — README, Cloud Readiness & Compatibility
History in the atlas
- First seen.
For your agent
- Ref
artifact:agraeber-cdsanalyser- JSON
- /artifacts/agraeber-cdsanalyser.json
- MCP
- Connecting an agent