ABAP中声明变量,类型等的方法的完整列表

时间:2019-06-13 06:55:55

标签: sap abap

我尝试编译ABAP提供的所有用于声明变量,类型等的方法,包括过时和acrane语法变体。因此,例如,我将在列表中包括FIELD-GROUPS,但不包括类的声明。我当前的清单如下。我有想念吗?

  • 声明变量的声明

    • 类似于数据的声明性语句

      数据(不包括公共部分的数据开始部分),统计信息,参数,参数,常数

    • FIELD-SYMBOLS

    • 内联声明
    • 程序的实际参数

      FORM(子例程),函数,方法

    • 其他变量声明语句

      范围,选择选项:还有吗?

  • 声明类型的声明

    • 类型
  • 其他声明

    • 通用零件的数据开始

      本身不是声明性语句,而是一种将其他DATA语句分组的方法。

    • FIELD-GROUPS

      声明提取数据集,该数据集不属于用于数据类型和数据对象的ABAP类型概念

免责声明:我们正在用Java写一个工具来解析和转换ABAP代码。特别是,我们无意编写新的ABAP代码。但是,相反,我们的工具必须处理所有ABAP,甚至是过时的语句和晦涩的语法变体。此外,我想提一下,我不是ABAP专家。

1 个答案:

答案 0 :(得分:2)

要完成您的列表,您可以添加以下内容(部分取自ABAP doc - obsolete declarations):

  • TABLES
  • NODES
  • LOCAL
  • FIELDS
  • CLASS-DATA
  • ALIASES用于属性(实际上不是声明,但是会为给定属性添加新名称)
  • CONTROLS

构造函数表达式(FOR aux ...,FOR,LET ...)中有辅助变量

程序具有预定义类型和变量(SYSCREEN等;我觉得您可以从“隐式系统包含”中提取所有这些内容和变量,但必须知道其中包括)。

最终在内部(DEFINE或外部(表TRMAC)的内部考虑语句。

有些语句与内部包含相对应:

  • TYPE-POOLS(在7.02之前是强制性的)
  • INFOTYPES
  • CONTEXTS

当然,还有所有 DDIC类型

我不知道您是否也要扫描CREATE DATA(用于抽象解释器之类的工具)。

PS:您说通用部分不是真正的声明性语句,这是错误的,它们声明数据对象,以及附加的“共享功能”。