本篇文件主要讲解的是在ABAP编程过程中如何声明变量。
1.按类型定义变量
ABAP的变量需要通过关键字DATA进行声明,当同时声明多个变量时,需要在DATA后面加冒号,如“DATA:”,每个变量可以分配默认值,使用"VALUE ‘默认值’"进行定义,基本语法如下:
DATA <变量名>(长度) TYPE <数据类型> VALUE <默认值>.
例如:定义一个C类型变量“TEST1”,长度为10,默认值为“Hello Sap” 。
DATA test1(10) TYPE C VALUE 'HELLO SAP'.
当同时定义多个变量时语法如下:
DATA:player(35) TYPE C,
nickname(35),
points TYPE I,
games TYPE I VALUE '10',
average(5) TYPE P,
acquired TYPE D.
在使用VALUE定义变量的默认值时,默认的最大长度不要超过变量设定的长度,否则系统会按设定长度自动截取。例如,定义变量"DATA:TITLE(5) TYPE C VALUE 'HELLO SAP'."。时变量的定长为5,那么该变量的实际值就为"HELLO"。若定义变量时未使用TYPE来声明数据类型,那么该变量会默认为字符类型,如例中的nickname(35)则表示长度等于35位的字符变量。
2.按参考定义变量
使用“LIKE”运算符,可以实现参照ABAP程序中的某变量或参照某一数据字典类型来定义新的变量,基本语法如下:
DATA <变量1> LIKE <变量2>.
如:
DATA: test1(10) TYPE C VALUE 'HELLO SAP',
test2 LIKE test1.
通过以上定义,test2与test1具有相同的属性。
3.变量的初始值
变量在赋值后要吧进行初始化恢复初始值,语法如下:
CLEAR <变量1>.
例如:
CLEAR:test1,test2.
4.常量
ABAP中使用关键字CONSTANT来定义常量。定义常量必须使用VALUE指定它的初始值,基本语法如下:
CONSTANT <变量名>(长度) TYPE <数据类型> VALUE <默认值>.
5.输出变量
输出变量用关键字“WRITE”,多个变量则加冒号“WRITE:”,如下:
WRITE test1.
WRITE:test1,test2.