浏览 ABAP 字典

学习目标

  • 描述 ABAP 字典的基本任务。

  • 命名最重要的字典对象。

ABAP 字典功能

传统 ABAP 世界中的 ABAP 字典

播放视频以了解 ABAP 字典的任务。

视频:本节含 SAP 官方视频(视频 ID 1_qpyeud5m),需在 learning.sap.com 在线观看。

让我们详细了解一下这些任务。

ABAP 字典中的数据库表定义表示数据库中的表。它独立于数据库的详细信息。例如,它使用自己的内置类型,而不是特定于数据库的类型。定义包含表的字段列表和附加表属性。

ABAP 代码访问 ABAP SQL 语句中的数据库表时,ABAP 语法检查会分析 ABAP 字典中的定义。此外,还可以确保表和表字段存在。

在运行时,数据库接口将 ABAP SQL 语句转换为数据库特定的 SQL 语法并将其发送到数据库。为此,还会查询 ABAP 字典中的表定义。

注意

过去,数据库视图的处理方式相同。但这些 ABAP 字典视图已过期,而是使用 ABAP 核心数据服务视图(请参阅下一课)。

ABAP 字典的第二个任务是为 ABAP 代码提供数据类型。ABAP 字典中定义的数据类型在整个系统中可见。这会将它们与使用 ABAP 关键字 TYPES 定义的数据类型区分开来。

字典类型可以是标量类型(数据元素)、结构类型(结构)和表类型。数据库表的定义具有双重角色:首先,它们定义数据库对象,但此外,它们还可以用作 ABAP 代码中的数据类型。

注意

通常,不建议使用数据库表定义作为数据类型。请改用专用结构类型。

在经典 ABAP UI 技术中,ABAP 字典完成了第三个任务。字典对象(主要是结构类型和数据库表定义)通过语义信息(如外键关系和搜索帮助绑定)进行了增强。UI 元素引用字典对象时,附加信息用于提供最终用户文本、值帮助、输入检查等。

ABAP 字典的此任务与现代 UI 技术(即 ABAP RESTful 应用程序编程模型)无关。ABAP RESTful 应用程序编程模型使用 CDS 实体中的元数据为用户界面提供服务。

在本培训课程中,我们不会讨论与传统 ABAP UI 编程相关的 ABAP 字典功能。传统 ABAP UI 技术已过期,在 ABAP Cloud 中不受支持。

ABAP 字典对象

让我们为您提供最重要的 ABAP 字典对象的概览。

  • 既未定义数据库对象,也不定义 ABAP 数据类型。它们仅在数据元素内间接使用。

  • 数据元素结构和****表类型定义了 ABAP 数据类型。它们不定义自己的数据库对象。

  • 数据库表定义和****数据库视图的主要用途是相应数据库对象的定义。您也可以将其用作数据类型,但不建议这样做。字典视图已过期,应改用 CDS 视图。

在 ADT 的项目浏览器中,您可以在专用节点字典中的开发包下找到字典对象。