ABAP基本语法.docx
- 文档编号:1925140
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:15
- 大小:22.07KB
ABAP基本语法.docx
《ABAP基本语法.docx》由会员分享,可在线阅读,更多相关《ABAP基本语法.docx(15页珍藏版)》请在冰豆网上搜索。
ABAP基本语法
ABAP基本语法
ABAP/4:
AdvancedBusinessApplicationProgramming
1.表声明
Tables:
表名[,表名].声明多个表时可用逗号分隔
当你声明了一个数据表的同时,系统也同时自动生成了一个和数据表同名的结构,结构的变量集等于数据表里面的字段。
2.定义变量
Data:
v1[(l)][typet][decimalsd][value'xxx'].
v1是变量名。
(l)是变量的长度。
t是数据类型。
d是小数位。
'xxx'是缺省值。
如:
datanum(10)typepdecimals3value'1.12'.
数据类型
描述
缺省长度
最大长度
可用字符
缺省值
C
字符型
1
65536
任意字符
空
N
数字文本
1
65536
0~9
0
D
日期
8(固定)
-
0~9
T
时间
8(固定)
-
0~9
000000
X
十六进制数
1
65536
0~9,A~F
数据类型
描述
缺省长度
最大长度
最大小数位
缺省值
I
整型
4(固定)
-
0
0
P
十进制数
8
16
14
0
F
浮点型
8
8
15
0.1
3.常用算术操作符:
算术符
描述
+
加法
-
减法
*
乘法
/
除法
**
取幂
DIV
整除
MOD
取模
4.常用比较操作:
比较操作
描述
v1=v2
等于
v1<>v2
不等于
v1>v2
大于
v1 小于 v1>=v2 大于等于 v1<=v2 小于等于 v1betweenv2andv3 在……之间 notv1betweenv2andv3 不在……之间 5.赋值语句 total=10. mess='thisisatest! '. 如果字符串中包括'号,用''进行付值,如: mess='thisisa''test''! '. 6.IF语句 ifi=2. write'i等于2'. [else. write'i不等于2'.] endif. 7.CASE语句 casei.类似于VFP中的DOCASE语句 when1.write'i=1'. when2.write'i=2'. [whenothers.write'i<>1andi<>2'.] endcase. 8.DO语句 do[n]times.类似于VFP中的FOR语句 [执行代码] enddo. 9.WHILE语句 while[条件].类似于VFP中的DOWHILE语句 [执行语句] endwhile. 10.从数据库中取数据集 select*from数据表[where条件]. [操作语句] endselect. 如: select*fromt000[wheremandt<200]. write: /t000-mandt,t000-mtext. endselect. 11.取出单行记录 selectsingle*from数据表[where条件].注: 仅取出符合条件的第一行记录 selectsingle字段from数据表into变量[where条件]. 12.WRITE语句 write: [/][定位][数据1][,[定位][数据2]]…… [/]为插入一行空行,注意单独write一个[/]和在其它数据之前加[/]的效果是不一样的,单独的write[/]在插入空行后光标定位在空行的下面,在其它数据前加[/]在插入空行后光标定位于所插的空行。 13.ULINE语句 uline.在当前行下一行显示一直线。 ulinen.在当前行第n列显示一直线。 uline/n.在当前行下一行第n列显示一直线。 uline和write‘|’一起使用可实现画表格的功能。 14.SKIP语句 SKIP.光标跳到下一行。 SKIPn.光标跑到下n行。 SKIPtolinen.光标跳到第n行。 15.定义常量 作用: 定义一些不会改变的数据,如一年的月数、圆围率等。 语法: constantsc1[(l)][typet][decimalsd]value'xxx'. 或者: constantsc1likecvvalue'xxx'. 例如: constantspitypepvalue‘3.14’. 16.定义结构 (1)基本结构 data: beginof结构名, f1[(l)][typet][decimalsd][value'xxx'], f2[(l)][typet][decimalsd][value'xxx'], …… endof结构名. (2)结构中包含另一结构 data: beginof结构名, f1[(l)][typet][decimalsd][value'xxx'], f2[(l)][typet][decimalsd][value'xxx'], f3like另一结构名, …… endof结构名. (3)定义结构的另一种写法: databeginof结构名. dataf1[(l)][typet][decimalsd][value'xxx']. dataf2[(l)][typet][decimalsd][value'xxx']. [includestructure另一个结构.] dataendof结构名.注: 此种写法data后可以加冒号也可以不加 例如: data: beginofperson, educ(10)typec, train(10)typec, endofperson. data: beginofemployee, code(10)typec, name(10)typec, department(20)typec, addresslikeperson,"person为另一个结构名 …… endofemployee. employee-code='1001'. employee-name='张三'. employee-department='IT部'. employee-person-educ='本科' employee-person-train='工程师' write: /employee-code,employee-name,employee-department,employee-person-educ. write: /employee. 17.TYPES语句 将结构定义成数据类型,这样在程序中可以象定义一个变量那样简单地定义一个结构。 语法同定义结构,只是把data换成types即可。 如: types: beginofemployee, code(10)typec, name(10)typec, endofemployee. types: address(50)typec. data: emptypeemployee.“使用TYPES定义的结构类型 data: myaddtypeaddress.“使用TYPES定义的变量类型 emp-code='1001'. emp-name='张三'. myadd='thisisaaddress'. write: /emp. write: /myadd. 18.LIKE语句 tables: t000. data: p(20)typec. data: p1liket000."p1拥有了和t000相同的结构 data: p2liket000-mandt."p2的定义等同于t000中mandt这个字段 "的定义 data: p3likep."p3的定义和p相同,为20长度的字符串 data: t111liket000occurs0withheaderline."定义一个和t000一样的内表 19.输入参数 要让一个变量成为可输入的参数,只需在定义变量时把data改为parameters即可。 parametersp1likev1... ...[default'xxx'][obligatory][lowercase] [ascheckbox][radiobuttongroupg]. 使用DEFAULT后缀为参数指定缺省值。 使用obligatory后缀来标识参数为必输项。 输入参数默认会把输入的字符转为大写,如果要去掉该转换,使用lowercase后缀。 使用ascheckbox后缀使参数以复选框的形式出现。 使用复选框的参数一定为长度为1的字符串,其内容只能为'X'或'',如: parameters: p1ascheckbox. parameters: p2ascheckboxdefault'X'. 使用radiobuttongroupg后缀使输入参数以单选框的形式出现。 使用单选框的参数一定为长度为1的字符串,其内容只能为'X'或'',如: parameters: p1radiobuttongroup1. parameters: p2radiobuttongroup1. parameters: p3radiobuttongroup2. parameters: p4radiobuttongroup2default'X'. 20.分块语句 selection-screenbeginofblock块名withframetitle[text-(titlename)]. parameters: v1(10)typec. parameters: aaliket000-mandt."将出现圆钮选择项,也可以自定义圆钮选择项 parameters: v2(10)typecmatchcodeobjectzhlp. 这是自定义的圆钮选择项,在SE38中创建搜索帮助,zhlp为创建的搜索帮助名称 selection-screenendofblock块名. selection-screenuline.“在输入屏幕上画线 21.定义内表 内表的定义和结构很相似,所差别只是内表需要指定记录的条数。 data: beginof内表名occursn, f1[(l)][typet][decimalsd][value'xxx'], f2[(l)][typet][decimalsd][value'xxx'], ... endof内表名. n为该内表的记录条数,不过当内表的记录数超过了该数值后,内表会自动的填大这个数目,定义该数值只是为了系统的效率考虑,如果n为0,则系统会在一开始就分配8KB的空间。 内表同时也可以以已存在的数据表或结构进行定义,格式为: da
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ABAP 基本 语法