ABAP-程序开始语句(Introductory Statements)(五)——类型池
ABAP开始语句包含以下6种:
CLASS-POOL:开始一个类池
FUNCTION-POOL:开始一个函数组
INTERFACE-POOL:开始一个接口池
PROGRAM:开始一个模块池或者子例程池
REPORT:开始一个可执行程序
TYPE-POOL:开始一个类型池
TYPE-POOL
语法:TYPE-POOL tpool
TYPE-POOL语句开始一个类型组。必须是在触发了任何包含程序后的类型组中的第一个语句。可以通过ABAP工作台在ABAP数据词典(SE11)维护类型组,同时一个包含TYPE-POOL语句的ABAP程序被自动生成。但是仓库中类型组中的程序的实际名字不完全匹配类型组的名字且只是内部相关。
类型组只能包含以下语句
INLCUDE
INCLUDE TYPE|STRUCTURE
TYPES
CONSTANTS
DEFINE和END-OF-DEFINITION
CLASS DEFINITION...DEFERRED PUBLIC
被声明的数据类型,常量,和宏必须在类型组前加前缀tpool(参见最下面例子).在类型组中声明的元素可以在每个ABAP程序中通过名字静态或者动态的定位。在当类型组中的元素第一次被访问的时候类型组加载。
说明:
类型组中使用的类型必须在ABAP数据词典提前定义。。
为了避免和使用条件like的类型引用冲突,必须确保在类型组中的常量和存在的扁平结构或者数据字典的数据表没有相同的名字。
类型组的名字可以包含最多5个字符。
之前,在元素可以被静态或者动态的访问之前ABAP程序中使用TYPE-POOLS语句后已经知道类型组。这个限制现在是绝对的。,但是现在TYPE-POOLS语句不再是必要的。
例子:
用于表类型定义的类型组:
TYPE-POOL mytgr
TYPES mytgr_spfli_tab TYPE HASHED TABLE OF spfli WITH UNIQUE KEY carrid connid.
文章来自于网络,如果侵犯了您的权益,请联系站长删除!