ABAP/4语言入门
1. ABAP/4 入门
淘宝c店
简介
ABAP/4(Advanced Business Application Programming) 是 SAP/R3 目前唯一的系统开发工具,属 4GL(第四代语言),语法比较近似 Visual Basic 或 JAVA,和传统的第三代语言,如C、PASCAL有很大不同,在程序模块(Program Structure Module)可分以下三个部分:
1. 过程块内的顺序编码
与一般语言语法近似,如IF,WHILE等,但并没有 GOTO 语法
2. 报表
调用一个独立的事件(Depending Event),读取数据库产生数据列表
3. 对话框
屏幕参数输入的对话框,专门处理数据库读取或更改的事务过程
基本语言概览
1. 数据元素声明方式,如数值,字符数据变量声明
2. 操作符使用,如 + - * / 陌生人火锅团购
3. 控制元素使用,如Boolean职业生涯值
4. 特殊数据格式,如日期与时间
5. 字符处理函数,如部分字符串的截取
6. 子程序或自定函数的调用
7. SQL语法使用
葬花吟二胡独奏8. 数据结构的使用,如过程内表的声明与使用
报表概览
跨省上班族
1. Reports Task,如报表屏幕预览或打印机打印的选择
2. Reports模块是一个独立的程序
3. 数据库读取方式,如可定义逻辑数据库(与磁盘的物理存储对应)
4. 报表数据的计算与产生
5. 报表的输出
第 1 页 ABAP/4 入门教程
对话框概览
1. 专处理数据库的读取与更改,如使用SQL命令
2. 对话框不是一个独立程序,使用事务码来产生屏幕对话框
3. 由流程逻辑控制,流程逻辑分成 PBO(Process Before Output,输出前过程)与PAI(Process After Input,输入后过程)
2. 开始编程
2.1 ABAP/4编辑器
创建ABAP/4程序
使用ABAP工作台撰写程序(选择工具->ABAP/4工作台,事务码S001),屏幕如下:
可分成:
1. ABAP/4编辑器:针对简单的报表或程序,仅使用几个组件或不使用
2. 对象浏览器:针对复杂的报表或程序,如对话事务模块(Dialog Transaction Module)的编写
第 2 页 ABAP/4 入门教程
使用ABAP/4编辑器撰写程序
1. ABAP/4编辑器界面如下(事务码SE38):
2. 输入程序名称,如果是新程序,按下“创建”,如果修改已存在程序,则按下“修改”或F6键。在命名规则上,报表程序为 Yaxxxxxx 或 Zaxxxxxx,a表示 application module(应用程序模块)简称,如 s 表示 SD。对话框程序为 SAPMYxxx 或 SAPMZxxx
第 3 页 ABAP/4 入门教程
3. 输入程序属性
(1).Title:程序描述或功能说明
(2).Type:执行模式,包括:可执行程序,如报表;INCLUDE程序;模块池;函数组;子程序池
(3).Status:程序开发状态,包括:SAP标准生产程序;客户生产程序;系统程序;测试程序
(4).Application:程序所属的应用模块,如:财务会计;物料管理;销售分销
注意:由于 SAP 翻译问题,上图界面语言混乱,操作时请以实际显示为准。
4. 选择开发类
开发类:用于同一系统中各个程序,如果不属任一类,可使用 $TMP
第 4 页 ABAP/4 入门教程
5. 撰写源代码
REPORT之后接的是程序名称,WRITE 是显示的意思,会将所接的字符串在屏幕上显示,注意每一行最后要有一个'.' (点),表示语句的结束,储存后返回 ABAP/4 编辑器界面。
6. 执行程序
按“执行”或F8键,屏幕可见执行所得的结果
第 5 页 ABAP/4 入门教程
蟠龙读音重要的编辑功能键
键
功能
F8
执行程序
F5
复制光标所在列的内容
F11
储存文件
CTRL+F11
海象英语
删除光标所在列
2.2 ABAP/4数据元素
数据类型
ABAP/4的数据类型可分成:
类型
长度
范围
初始值
说明
C
1
1-65535字节
空格
字符串数据,如'Program'
D
8
8字节
'00000000'
日期数据,格式为YYYYMMDD
F
8
8字节
0
浮点数
I
4
-2^31至2^31-1
0
整数
N
1
1-65535字节
'00…0'
数值所组成的字符串
P
8
1-16字节
0
Packed数,用在小数点数
T
6
6字节
'000000'
时间数据,格式为HHMMSS
X
1
1-65535字节
X'00'
16进制数
变量声明
变量声明包含 name, type, length 和 structure 四个部分,使用 DATA 命令,如
DATA: S1 TYPE I,
SUM TYPE I.
常数声明
常数声明使用 CONSTANTS 命令,如声明 PI 是一个小数点 5 位的值 3.14159
CONSTANTS PI TYPE P DECIMALS 5 VALUE '3.14159'.
系统所定义数据
这是由系统所定义的专有名词,如:
SPACE "空格字符串
第 6 页 ABAP/4 入门教程
SY-SUBRC "系统执行返回值,0表示成功
SY-UNAME "登录帐号
SY-DATUM "系统日期
SY-UZEIT "系统时间
SY-TCODE "西克斯目前的事务码
TYPE声明
用来指定数据类型或声明自定数据类型
示例:
TYPES: BEGIN OF MYLIST,
NAME(10) TYPE C,
NUMBER TYPE I,
END OF MYLIST.
DATA LIST TYPE MYLIST.
LIKE声明