SAP ABAP 变量
变量声明的基本形式
data <f> type <type> value <val>
<f>:变量名称(最多包含30个字符)
<type>:指定变量的类型。
<val>:指定<f>的初始值
data d1(2) type c.
data d2 like d1.
data mininum_value type i value 10.
在上面的代码片段中,d1是C类型的变量,d2是d1类型的变量,minimum_value是ABAP整数类型的变量。
静态变量
1、使用“CLASS-DATA"语句,可以在类中声明变量。
2、“PARAMETERS"语句可用于声明链接到选择屏幕上的输入字段的基本数据对象。
3、可以使用“SELECT-OPTIONS"语句声明在选择屏幕上链接到输入字段的内部表。
report ztest123_01.
parameters: name(10) type c,
calss type i,
score type p decimals 2,
connect type mara-matnf.
NAME表示10个字符的参数,CLASS表示整数类型的参数,默认大小(以字节为单位),SCORE表示具有最多两个小数位的值的打包类型参数,CONNECT是指ABAP字典的MARA-MATNF类型 。

参考变量
声明引用变量的语法是:
data <ref> type ref to <type> value is initial
1、REF TO附加声明一个引用变量ref。
2、REF TO之后的规范指定了引用变量的静态类型。
3、静态类型限制< ref>的对象集合。 可以参考。
4、引用变量的动态类型是它当前引用的数据类型或类。
5、静态类型总是更加通用或与动态类型相同。
6、TYPE添加用于创建绑定引用类型和起始值,并且只能在VALUE添加后指定IS INITIAL。
calss c1 definition.
public section.
data bl type i value 1.
endclass.
data: oref type ref to c1,
dref1 like ref to oref,
dref2 type ref to i.
create object oref.
get reference of oref into dref1.
create data dref2.
dref2→* = dref1→*→bl.
系统变量
1、ABAP系统变量可从所有ABAP程序访问。
2、这些字段实际上由运行时环境填充。
3、这些字段中的值指示系统在任何给定时间点的状态。
4、可以在SAP中的SYST表中找到系统变量的完整列表。
5、可以使用“SYST-"或“SY-"访问SYST结构的各个字段。
report z_test123_01
write:/'sy-abcde', sy-abcde,
/'sy-datum', sy-datum,
/'SY-DBSYS', SY-DBSYS,
/'SY-HOST ', SY-HOST,
/'SY-LANGU', SY-LANGU,
/'SY-MANDT', SY-MANDT,
/'SY-OPSYS', SY-OPSYS,
/'SY-SAPRL', SY-SAPRL,
/'SY-SYSID', SY-SYSID,
/'SY-TCODE', SY-TCODE,
/'SY-UNAME', SY-UNAME,
/'SY-UZEIT', SY-UZEIT.
输出
SY-ABCDE ABCDEFGHIJKLMNOPQRSTUVWXYZ
SY-DATUM 12.09.2015
SY-DBSYS ORACLE
SY-HOST sapserver
SY-LANGU EN
SY-MANDT 800
SY-OPSYS Windows NT
SY-SAPRL 700
SY-SYSID DMO
SY-TCODE SE38
SY-UNAME SAPUSER
SY-UZEIT 14:25:48
网友评论