ABAP CDS Views

📚 ABAP CDS Views – 学霸笔记
TERMINAL_INPUT >
Content Source: https://help.sap.com/

🔥 核心速记
概念 关键点
CDS View 用 DDL 定义的数据库视图,支持复杂 SQL
CDS Entity 语义层面的视图,用于 ABAP 和其他 CDS
CDS DB View 技术层面的底层 SQL 视图
⚡ 一张图搞懂 CDS View 的双重身份
CDS View 定义 (DDL Source)

├──▶ CDS Entity (语义键) ← ABAP 开发用这个!
│ – 可作为数据源
│ – 可作为数据类型
│ – 可在 ABAP SQL 中读取

└──▶ CDS DB View (技术键) ← SE11 可查看,禁止在 ABAP 中直接用
– 底层 SQL View
– 结构化类型
– 建议用 CDS Entity 替代
📌 必须背下来的规则
1️⃣ 命名规则
CDS Entity: cds_entity (DDL 中 DEFINE VIEW 后定义)
CDS DB View: CDS_DB_VIEW (@AbapCatalog.sqlViewName 注解)
2️⃣ 使用限制
对象 能用在哪里 不能用在哪里
CDS Entity ✅ ABAP SQL、CDS 数据源、ABAP 数据类型 ❌ SE11 经典字典对象
CDS DB View ✅ SE11 显示、Native SQL、AMDP ❌ ABAP SQL (7.50+ 禁用)
TERMINAL_INPUT >
⚠️ 7.50+ 严格模式: 必须用 CDS Entity,禁止用 CDS DB View!

3️⃣ KEY 的区别
KEY 类型 定义方式 用途
语义键 DEFINE VIEW 中用 KEY 定义 CDS Entity 的主键
技术键 隐式确定(像经典 DB View) CDS DB View 的主键
💡 开发要点
创建方式
⬡工具: ADT (ABAP Development Tools) 或 SE11
⬡语言: CDS DDL (不是 ABAP!)
⬡注解: @AbapCatalog.sqlViewName 定义 DB View 名
激活时发生什么
创建 CDS Entity (语义层)
创建 CDS DB View (SQL View)
自动同步到 ABAP Dictionary
🔄 CDS View vs 经典 View
特性 CDS View 经典 DB View
定义方式 DDL 源代码 SE11 表单
** Associations** ✅ 支持 ❌ 不支持
访问控制 ✅ 支持 ❌ 不支持
ABAP SQL ✅ CDS Entity ⚠️ 已过时
🎯 考试重点
CDS Entity 是 ABAP 开发的主要接口
CDS DB View = SE11 能看到的底层视图
不能把 CDS DB View 当数据类型用于 SE11 对象
7.50+ 严格模式禁止用 CDS DB View 做 ABAP SQL 查询
语义键用 KEY 关键字定义,技术键隐式确定
📝 快速问答
Q: 为什么有两个名字?

TERMINAL_INPUT >
CDS Entity 用于语义层,CDS DB View 用于底层技术实现。

Q: 在 ABAP 中应该用哪个?

TERMINAL_INPUT >
✅ CDS Entity

Q: SE11 能编辑 CDS View 吗?

TERMINAL_INPUT >
❌ 只能查看,不能编辑。编辑要用 ADT。

Q: Client 列问题

TERMINAL_INPUT >
CDS DB View 的 client-specific CDS View 始终有 client 列,而 CDS Entity 没有。

🧠 记忆口诀
TERMINAL_INPUT >
“Entity 是正面,DB View 是背面;ABAP 开发用正面,底层技术看背面”

⏭️ 延伸学习
⬡ ABAP CDS – Client Handling
⬡ ABAP CDS – Table Buffering
⬡ CDS View Enhancements (无修改增强)

If you have problem, please fell free to contact.Thanks.

About me:

This post is come from www.hot583.com, you can share/use it with the post original link for free.

But pay attention of any risk yourself.

If you like, Fell free to let your friends know this. Thanks.

Original Post In Wechat《The End》

Leave a Comment

Your email address will not be published.