16.内表示例:下列程序是有关如何将结构化数据对象声明为内表的示例。
PROGRAM SAPMZTST. TYPES: BEGIN OF MYSTRING, NUMBER TYPE I, NAME(10) TYPE C, END OF MYSTRING. TYPES MYTAB TYPE MYSTRING OCCURS 5. DATA STRING TYPE MYSTRING. DATA ITAB TYPE MYTAB. STRING-NUMBER = 1. STRING-NAME = 'John'. APPEND STRING TO ITAB. STRING-NUMBER = 2. STRING-NAME = 'Paul'. APPEND STRING TO ITAB. STRING-NUMBER = 3. STRING-NAME = 'Ringo'. APPEND STRING TO ITAB. STRING-NUMBER = 4. STRING-NAME = 'George'. APPEND STRING TO ITAB. LOOP AT ITAB INTO STRING. WRITE: / STRING-NUMBER,STRING-NAME. ENDLOOP. 该程序在屏幕上产生下列输出: 1 John 2 Paul 3 Ringo 4 George 示例中,首先将数据类型MYSTRING定义为字段串。然后,根据字段串MYSTRING,用TYPES语句的OCCURS参数将数据类型MYTAB定义为内表。利用数据类型MYSTRING和MYTAB声明数据对象STRING和ITAB。然后逐行填充内表ITAB的字段。通过使用字段串STRING,在屏幕上显示ITAB的内容。
17.如何确定数据对象的长度?
Data: text(8),len type i. //定义了两个变量 Describe field text length len. //将变量text的长度存放于变量len中 Write len. //打印变量text的长度值
18.如何确定数据对象的类型?
DATA: TEXT(8) TYPE N, TYP. //定义了两个变量TEXT和TYP DESCRIBE FIELD TEXT TYPE TYP. //将变量TEXT的类型存放于变量TYP中 WRITE TYP. //打印变量TEXT的类型
19.如何确定数据对象的输出长度?
Data: text type f, len type I, out-len type i. //定义了三个变量 Describe field text length len output-length out-len. //将变量text的长度存放于变量中 Write: len,out-len. //打印变量text的长度值
20.如何确定数据对象的小数位数?
Data: text type p decimals 2,dec. //定义了两个变量 Describe field text decimals dec. //将变量text的长度存放于变量中 Write: dec . //打印变量text的长度值
21.如何确定转换例程?
Data: text type n, exam type i. //定义了两个变量 Describe field text edit mask i. //将变量text的长度存放于变量中 Write: i . //打印变量text的长度值