在 ABAP 中声明变量、类型等的完整方法列表
Full list of ways to declare variables, types, and alike in ABAP
我尝试编译 ABAP 提供的所有声明变量、类型等的方法,包括过时的和晦涩的语法变体。因此,例如,我会在列表中包含 FIELD-GROUPS 但不包含 类 的声明。我目前的清单如下。我错过了什么吗?
声明变量的语句
DATA-like 声明式语句
数据(不包括公共部分的数据开始)、统计、参数、参数、常量
字段符号
- 内联声明
程序实际参数
FORM(子程序)、FUNCTION、METHOD
其他变量声明语句
范围,SELECT-选项:还有更多吗?
声明类型的语句
- 类型
其他报表
公共部分数据开始
它本身不是一个声明性语句,而是一种对进一步的 DATA 语句进行分组的方法。
场组
声明一个提取数据集,它不是数据类型和数据对象的 ABAP 类型概念的一部分
免责声明:我们正在 Java 中编写一个工具来解析和转换 ABAP 代码。特别是,我们无意编写新的 ABAP 代码。但相反,我们的工具必须处理所有 ABAP,甚至是过时的语句和晦涩的语法变体。此外,我想说明一下,我不是 ABAP 专家。
要完成您的列表,您可以添加这些(部分取自 ABAP doc - obsolete declarations):
TABLES
NODES
LOCAL
FIELDS
CLASS-DATA
ALIASES
属性(不是真正的声明,但它为给定的属性添加了一个新名称)
CONTROLS
构造函数表达式中有辅助变量(FOR aux..., FOR , LET ...)
程序有预定义类型和变量(SY
、SCREEN
等等;我觉得你可以从"implicit system includes" 但你必须知道那些包括)。
最终考虑宏中的语句,内部(DEFINE
)或外部(table TRMAC
)。
有语句对应内部包含:
TYPE-POOLS
(7.02 之前是强制的)
INFOTYPES
CONTEXTS
当然还有DDIC类型.
不知道你要不要也扫描CREATE DATA
(抽象解释器之类的工具)
PS:你说公共部分不是真正的声明语句,那是错误的,它们声明数据对象,再加上一个额外的"sharing feature".
我尝试编译 ABAP 提供的所有声明变量、类型等的方法,包括过时的和晦涩的语法变体。因此,例如,我会在列表中包含 FIELD-GROUPS 但不包含 类 的声明。我目前的清单如下。我错过了什么吗?
声明变量的语句
DATA-like 声明式语句
数据(不包括公共部分的数据开始)、统计、参数、参数、常量
字段符号
- 内联声明
程序实际参数
FORM(子程序)、FUNCTION、METHOD
其他变量声明语句
范围,SELECT-选项:还有更多吗?
声明类型的语句
- 类型
其他报表
公共部分数据开始
它本身不是一个声明性语句,而是一种对进一步的 DATA 语句进行分组的方法。
场组
声明一个提取数据集,它不是数据类型和数据对象的 ABAP 类型概念的一部分
免责声明:我们正在 Java 中编写一个工具来解析和转换 ABAP 代码。特别是,我们无意编写新的 ABAP 代码。但相反,我们的工具必须处理所有 ABAP,甚至是过时的语句和晦涩的语法变体。此外,我想说明一下,我不是 ABAP 专家。
要完成您的列表,您可以添加这些(部分取自 ABAP doc - obsolete declarations):
TABLES
NODES
LOCAL
FIELDS
CLASS-DATA
ALIASES
属性(不是真正的声明,但它为给定的属性添加了一个新名称)CONTROLS
构造函数表达式中有辅助变量(FOR aux..., FOR , LET ...)
程序有预定义类型和变量(SY
、SCREEN
等等;我觉得你可以从"implicit system includes" 但你必须知道那些包括)。
最终考虑宏中的语句,内部(DEFINE
)或外部(table TRMAC
)。
有语句对应内部包含:
TYPE-POOLS
(7.02 之前是强制的)INFOTYPES
CONTEXTS
当然还有DDIC类型.
不知道你要不要也扫描CREATE DATA
(抽象解释器之类的工具)
PS:你说公共部分不是真正的声明语句,那是错误的,它们声明数据对象,再加上一个额外的"sharing feature".