本篇文件主要讲解的是在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.

ABAP中使用关键字CONSTANT来定义常量。定义常量必须使用VALUE指定它的初始值,基本语法如下:

CONSTANT <变量名>(长度) TYPE <数据类型> VALUE <默认值>.

5.输出变量

输出变量用关键字“WRITE”,多个变量则加冒号“WRITE:”,如下:

WRITE test1.

WRITE:test1,test2.