用途:帮助在 ABAP Cloud 与标准 ABAP 中编写现代 ABAP SQL 查询,并在必要时使用 AMDP。上下文区分两种环境,语法可用范围不同;优先使用 ABAP SQL,仅在复杂计算需 SQLScript、需要 CDS 表函数或大数据量下推时才用 AMDP。
主要能力:内联声明(INTO @DATA(...))、SELECT 列表表达式(CASE、CAST、CONCAT、算术)、聚合与 GROUP BY/HAVING、窗口函数(SUM/RANK/ROW_NUMBER/LAG/LEAD 配合 OVER PARTITION BY)、CTE(WITH +name AS)、集合运算(UNION/UNION ALL/INTERSECT/EXCEPT)、标量与 EXISTS 子查询、内置字符串/数值/日期时间/转换/空值/聚合函数、PRIVILEGED ACCESS(绕过 CDS DCL,需谨慎)。
AMDP 用法:类实现 if_amdp_marker_hdb;方法声明 AMDP OPTIONS READ-ONLY 及 CDS SESSION CLIENT DEPENDENT 或 CLIENT INDEPENDENT;过程用 BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT 实现;CDS 表函数由 FOR TABLE FUNCTION 的静态方法实现。云开发中 READ-ONLY 为强制项。
Clean Core 等级:读取已发布 CDS 视图为 A;直接读 SAP 表为 C(ATC 优先级 2);直接写为 D(优先级 1);EXEC SQL 与数据库提示为 D 级关键语句;AMDP 基于已发布实体为 A,基于 SAP 表读 C 写 D。旧代码改造建议用 SQL Monitor 找优化点,再以 CDS、AMDP 与 ABAP SQL 做代码下推,而非原生 SQL 或提示。
限制:资料未提供具体收费、平台版本与性能数据;示例语法以资料所列为准。