核心数据服务 (CDS)
公司但愿使用 SAPS/4HANA 核心数据服务 (CDS) 视图技术。须要学习 CDS 视 图的概念和结构以及语法 。数据库
ABAP中的 CDS 支持代码下推到数据库层,经过ABAP 中的 “视图实体” 简化关系数据架构
模型的消耗。如今,您能够从语义上定义集成到 ABAP 字典的 DDL 源对象中的丰富数据模型 。函数
经过开放式 SQL 中未提供的扩展视图功能(如 UNION、UNION ALL和关联)支持代码下推。学习
支持一个视图使用另外一个视图的嵌套视图。能够在 WHERE 子句以及表达式中定义和使用视图实体优化
之间的关联。 CDS彻底集成到 ABAP基础架构,同事可在视图实体上使用开放式 SQL。spa
ABAP CDS 可用于全部数据库 。与 ABAP 字典中定义的现有数据库表和视图相比 ,这些模型的实体提供 了加强访问功能 ,使其可优化基于开放式 SQL 的应用程序。htm
DDL 源和 CDS 实体的最佳部分是它们可由 ABAP 进行管理。这表示 CDS 实体的整个生命周期由 ABAP 变动与传输系统 (CTS) 进行控制。对象
Eclipse中的 ABAP 新功能包括:blog
数据定义语言 (DDL) 语法规则 生命周期
表 1: 数据定义语言 (DDL) 语法规则
关键字 |
|
名称 |
|
文 字 |
|
注释 |
|
分隔符 |
|
保护字 |
|
注意:
● 因为一部分 CDS 源代码当前仅包含一个语句 ,所以语句后的结束分号是可选的 。
● SELECT、select和 Select均是指定关键字的有效方式 。另外一方面,seLect 和 SeLect会生成语法错误 。
● MYVIEW、myview和 myView均表示同一操做数 。
● 0.5 是有效的数字文字 ,但 .5 不是。
有关常规 ABAPCDS 语法规则的详细信息 ,
可参阅此处:https://help.sap.com/ abapdocu_750/en/abencds_general_syntax_rules.htm
语言要素 | 含义 |
DEFINE VIEW ...AS | 定义 CDS 视图 |
WITH PARAMETERS | 定义 CDS 视图的输入参数 |
SELECT [DISTINCT] ...FROM | CDS 视图的 SELECT 语句 |
INNER JOIN ...ON | SELECT 语句的内部链接 |
LEFT|RIGHT OUTER JOIN ...ON | SELECT 语句的外部链接 |
ASSOCIATION ...TO ...AS ...ON | 在 SELECT 语句中定义路径表达式的关联 |
1: | 路径表达式的属性 |
INNER ...WHERE | 路径表达式的属性 |
LEFT OUTER ...WHERE | 路径表达式的属性 |
KEY ...AS | SELECT 清单要素 |
$EXTENSION.* | SELECT 清单中的加强要素 |
WHERE ... | SELECT 语句的 WHERE 子句 |
GROUP BY ... | SELECT 语句的 GROUP-BY 子句 |
HAVING ... | SELECT 语句的 HAVING 子句 |
UNION ALL ... | SELECT 语句的 UNION 子句 |
数据定义语言 (DDL) 语法规则 - 表达式
运算符 | 含义 |
MAX、MIN、AVG、SUM、COUNT | SELECT 语句中的聚合表达式 |
+、-、*、/ | 运算符 |
CASE、WHEN、THEN、ELSE、END | 条件区分 |
CAST | SELECT 语句中的转型表达式 |
=、<>、<、>、<=、> =、BETWEEN、LIKE、 IS NULL、NOT、AND、OR | SELECT 语句中的关系表达式 |
数据定义语言 (DDL) 语法规则 - 预约义函数
函数 | 含义 |
ABS、CEIL、DIV、DIVISION、FLOOR、 MOD、ROUND | SELECT 语句中的数字函数 |
CONCAT 、CONCAT_WITH_SPACE 、 INSTR 、LEFT、LENGTH、LPAD 、LTRIM 、 REPLACE、RIGHT、RPAD 、RTRIM、SUBSTRING | SELECT 语句中的字符串函数 |
BINTOHEX、HEXTOBIN | SELECT 语句中的字节字符串函数 |
COALESCE | SELECT 语句中的合并函数 |
UNIT_CONVERSION、CURRENCY_CONVERSION、DECIMAL_SHIFT | SELECT 语句中的转换函数 |
DATS_IS_VALID、 DATS_DAYS_BETWEEN、 DATS_ADD_DAYS、 DATS_ADD_MONTHS |
SELECT 语句中的日期函数 |
TIMS_IS_VALID | SELECT 语句中的时间函数 |
TSTMP_IS_VALID、 TSTMP_CURRENT_UTCTIMESTAMP、 TSTMP_SECONDS_BETWEEN、 TSTMP_ADD_SECONDS |
SELECT 语句中的时戳函数 |
有关 ABAPCDS 语言要素的详细信息 ,可参阅此处:https://help.sap.com/ abapdocu_750/en/abencds_language_elements.htm
数据定义语言 (DDL) 语法规则 - 关键字和附加 语言要素 含义
语言要素 | 含义 |
EXTEND VIEW ...WITH | 经过 CDS 视图加强加强 CDS 视图 |
有关 ABAPCDS 语言要素的详细信息 ,可参阅此处:https://help.sap.com/ abapdocu_750/en/abencds_language_elements.htm