一、ABAP介绍
ABAP(Advanced Business Application Programming)是一种高级编程语言,专为开发和定制SAP应用程序而设计。它是由德国软件公司SAP创建的,用于在SAP ERP系统和其他SAP软件产品中进行应用开发。以下是对ABAP的一些关键介绍:
1. 历史背景
- 创建时间:ABAP最早于1980年代初发布。
- 主要用途:最初用于开发SAP R/2系统上的报告和事务,现在主要用于SAP R/3系统及其后续版本(包括S/4HANA)。
二、基础语法
T-Code:SE38 (ABAP-GUI开发编辑器)
注意点:ABAP句号.代表一个语句的结束。(没有结束,Runing会报错)
* 和 " 代表注释。
1、WRITE 、换行、空白行、抑制空白,行线。
WRITE 'Hello, World!'. *打印输出 Hello, World!,每次只能输出一个字符串。
WRITE: 'A',
'B',
'C'. "冒号多行输出。 他俩结果会在同一行显示
WRITE: 'Line 1', / 'Line 2', / 'Line 3'. *换行符 /
SKIP . *空白行
SKIP 3. *插入多个空白行
SKIP TO LINE 1. *TO line1 会把下面WRITE 'This is the 1st line',输出到屏幕第一行(准确的说
是第二行,SAP标题自带独占第一行。)
WRITE 'This is the 1st line'.
DATA: LV_NUR(10) TYPE N.
LV_NUR = 50.
WRITE / LV_NUR. *输出0000000050. (因为LV_NUR我定义的10位数)
WRITE / LV_NUR NO-ZERO. *NO-ZERO命令抑制空白,输出50.
ULINE. *插入行线.
ULINE 10. *指定行线长度.
2、消息类
使用事务码 SE91
创建一个新的消息类
消息类型决定了消息在屏幕上如何显示及其行为。ABAP中常用的消息类型有:
- I (Information):信息消息,用户点击确认后继续。
- W (Warning):警告消息,用户点击确认后继续。
- E (Error):错误消息,用户点击确认后,程序停止执行并返回到输入屏幕。
- A (Abort):中止消息,程序会中断执行。
- S (Success):成功消息,通常在后台显示。
- X (Exit):退出消息,生成运行时错误并终止程序。
REPORT z_demo01 MESSAGE-ID Z_2024_EVAN. "继承消息类
MESSAGE E000(Z_2024_EVAN).
MESSAGE W000(Z_2024_EVAN) DISPLAY LIKE 'E'. *警告但已错误显示。
MESSAGE I000(Z_2024_EVAN).
MESSAGE A000(Z_2024_EVAN).
MESSAGE S000(Z_2024_EVAN).
MESSAGE X000(Z_2024_EVAN).
*继承消息类后简单写法
MESSAGE X000
3、基本数据类型
1)变量类型的使用
DATA lv_date TYPE D.
lv_date = sy-datum. "(赋值的是系统变量),Tcode是多少?我忘记了,你也可以告诉我。 写出来,双击它sy-datum也能进去。
WRITE: lv_date.
2) 定义表结构、指定数据类型
--定义表---------
*结构类型定义
*TYPES: 关键字,用于定义数据类型。
*TYPE用于声明变量或字段时指定数据类型
*BEGIN OF: 关键字,表示开始定义一个结构。
*END OF ty_student: 结束结构类型定义。
TYPES: BEGIN OF ty_student,
id TYPE n LENGTH 10,
name TYPE c LENGTH 20,
age TYPE i,
END OF ty_student.
* s->Structre(结构)
*声明一个名为ls_student的结构变量,其类型为
*定义变量前缀必须使用声明的结构。 (ls_student)
*读取表名字段,-字段名 ls_student-name
DATA : ls_student TYPE ty_student.
ls_student-id = '0001'.
ls_student-name = 'Evan'.
ls_student-age = 22.
WRITE: ls_student-id,ls_student-name,ls_student-age.
3)常量
CONSTANTS: 关键字定义
"常量值不会改变
CONSTANTS: lc_name TYPE c LENGTH 10 VALUE '1234'.
4) 复杂(自定义)和参考类型 TYPES
1、复杂类型分为结构类型和表类型。 在结构类型中,基本类型和结构(即,嵌入在结构中的结构)被分组在一起。
2、当基本类型被分组在一起时,数据项可以作为分组数据项被访问或者可以访问各个基本类型数据项 (结构字段)。
表类型 = 数组,数组可以是简单数组或结构数组。 在A B A P中,数组被称为内部表。