ABAP一些基础知识整理.ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ABAP
l 了解ABAP l SAP的三层体系结构 l ABAP语法概述 l ABAP语言的基本元素 l ABAP的语法格式 l 结构类型和结构体 l 内表 l 数据库操作
ABAP
• ABAP(Advanced business application program),是一种高级企业应用编程语言, 它支持封装性和继承性,封装性是面向对象 的基础,而继承性是建立在封装性基础上的 重要特性。它适合生成报表,支持对数据库 的操作,如:SQLserver,Oracle,DB2等主流 数据库系统。
• 数据库层(Database layer):这里就是SAP系统 的核心,存放了所有SAP系统的数据。
语法概述
ABAP基本语法特点
• 由各自独立的语句构成。 • 每个语句的第一个单词必须是ABAP关键字。 • 单词之间至少要用一个空格分隔。 • 每个语句结束必须要用句号。 • 支持分块缩进,便于阅读。 • 一个语句可以跨多行,只要不遇到句号,就认
-TYPES: address TYPE C.
注:TYPES语句用来创建用户定义的基本数据类型和结构化的数 据类型,通过TYPE定义的类型不能直接使用,需要通过DATA进行定 义其对应的变量后才可使用
如: DATA:address1 TYPE address
语句链
如果连续多行的第一个关键字相同,可以使用链 语句 ,链语句的方式 减少输入
true
使用CASE的条件分支
基本语法:
CASE <f>. WHEN <F1>. <statement block> WHEN <F2>. <statement block> WHEN <F3>. <statement block> WHEN ... ...... WHEN OTHERS. <statement block>
ELSEIF <condition3>. <statement block>
..... ELSE.
<statement block> ENDIF.
例子:
• DATA flag TYPE c VALUE ‘a'. • IF flag = ‘a‘. • WRITE / ‘true‘. • ELSE. • WRITE / ‘error'. • ENDIF. • 产生如下输 出:
• IS ASSIGNED 检查字段是否被分配
– BETWEEN操作符
– 组合逻辑表达式
AND 与
OR 或
NOT 非
ABAP程序的关健字
关健字是语句的第一个词,它决定整个语句的意义,有 四种不同类型的关健字 1.说明性关健字 TYPES,DATA,TABLES,这些关健字说明定义数据类 型或者说明程序可以访问的数据对象 2.事件关健字 AT SELECTION SCREEN,
为是一个延续 的语句。 • 可以把多个语句放在一行。
ABAP基本语法特点(持续)
• ABAP不区分大小写,关键字和用户操作数都一样, 为了便于 阅读,一般把关键字大写,而操作数小写。
• 由于编程的时候随时切换大小写比较麻烦,可以在 ABAP编 辑器中用“规范化打印机”按钮来自动转 换。
• 如果连续多行的第一个关键字相同,可以使用链语 句 链语句的方式 减少输入
WRITE text1. WRITE text2. WRITE text3. 可以写成:WRITE: text1,text2,text3.
分支结构(IF,CASE)
使用IF的条件分支
IF <condition1>. <statement block>
ELSEIF <condition2>. <statement block>
ENDCASE.
例子:
• DATA: TEXT1 VALUE 'X', TEXT2 VALUE 'Y', TEXT3 VALUE 'Z', STRING VALUE 'A'.
注释:
• 注释行由第一列的星号(*)开头,并且必须写在第 一 列,前面不能有空格。
• 编译器忽略注释行,不会执行。 • 在行末的注释用双引号(”)作为前导。
ABAP语言的基本元素
数据类型
• D :日期类型,格式为YYYYMMDD,长度为8 • T :时间类型,格式为HHMMSS,长度为6 • I :整数类型,长度为4 • F :浮点类型,长度为8 • STRING:变长字符串类型 • XSTRING:变长字节序列类型 • C :字符串类型,定义变量时指定字符个数 • N :数字字符串类型,定义变量时指定数值字符个数 • X :字节序列类型,定义变量时指定字节数 • P :组合数值类型,定义变量时指定长度和小数点后位
ST源自文库RT-OF-SELECTION
AT USER-COMMAND 这些关健字在ABAP中定义处理块,处理块是当特定事 件发生时进行处理的语句组
ABAP程序的关健字
3.控制关健字 IF ,WHILE,CASE
4.操作关健字 WRITE,MOVE,ADD 用于处理数据
语法格式
• 定义数据对象
– DATA name TYPE type_name 例: DATA number TYPE I. 定义了一个对象number其类型为I DATA num TYPE I value 18. 定义了一个对象num其类型为I初始值为18.
SAP三层体系结构
• 表现层(Presentation Layer):这是SAP用户和 R/3系统交流的接口,用户在这一层对SAP系统进行 操作。这层将用户的命令或者操作传送给R/3系统, 然后系统进行相应的处理后把数据返还给用户。
• 应用层(Application layer):这层包括一个或 者多个应用服务器和一个消息服务器。每一个应用 服务器包括一系列服务以便运行应用程序。所有的 服务分置在这些应用服务器之中,其实用户需要的 只是其中的一个应用服务器,多个服务器之间传递 信息以决定用户到底需要的是哪个服务器的服务。
数
ABAP运算
• 数值运算(在ABAP中数学表达式可以任意多层嵌套)
– 算术运算
– 数学函数
– 时间日期运算
• 逻辑表达式
– 通用逻辑运算符
EQ( = ) NE( <> ) LT( < ) LE( <= ) GT( > ) GE( >= )
– IS操作符
• IS INITIAL 检查字段是否为初始值
l 了解ABAP l SAP的三层体系结构 l ABAP语法概述 l ABAP语言的基本元素 l ABAP的语法格式 l 结构类型和结构体 l 内表 l 数据库操作
ABAP
• ABAP(Advanced business application program),是一种高级企业应用编程语言, 它支持封装性和继承性,封装性是面向对象 的基础,而继承性是建立在封装性基础上的 重要特性。它适合生成报表,支持对数据库 的操作,如:SQLserver,Oracle,DB2等主流 数据库系统。
• 数据库层(Database layer):这里就是SAP系统 的核心,存放了所有SAP系统的数据。
语法概述
ABAP基本语法特点
• 由各自独立的语句构成。 • 每个语句的第一个单词必须是ABAP关键字。 • 单词之间至少要用一个空格分隔。 • 每个语句结束必须要用句号。 • 支持分块缩进,便于阅读。 • 一个语句可以跨多行,只要不遇到句号,就认
-TYPES: address TYPE C.
注:TYPES语句用来创建用户定义的基本数据类型和结构化的数 据类型,通过TYPE定义的类型不能直接使用,需要通过DATA进行定 义其对应的变量后才可使用
如: DATA:address1 TYPE address
语句链
如果连续多行的第一个关键字相同,可以使用链 语句 ,链语句的方式 减少输入
true
使用CASE的条件分支
基本语法:
CASE <f>. WHEN <F1>. <statement block> WHEN <F2>. <statement block> WHEN <F3>. <statement block> WHEN ... ...... WHEN OTHERS. <statement block>
ELSEIF <condition3>. <statement block>
..... ELSE.
<statement block> ENDIF.
例子:
• DATA flag TYPE c VALUE ‘a'. • IF flag = ‘a‘. • WRITE / ‘true‘. • ELSE. • WRITE / ‘error'. • ENDIF. • 产生如下输 出:
• IS ASSIGNED 检查字段是否被分配
– BETWEEN操作符
– 组合逻辑表达式
AND 与
OR 或
NOT 非
ABAP程序的关健字
关健字是语句的第一个词,它决定整个语句的意义,有 四种不同类型的关健字 1.说明性关健字 TYPES,DATA,TABLES,这些关健字说明定义数据类 型或者说明程序可以访问的数据对象 2.事件关健字 AT SELECTION SCREEN,
为是一个延续 的语句。 • 可以把多个语句放在一行。
ABAP基本语法特点(持续)
• ABAP不区分大小写,关键字和用户操作数都一样, 为了便于 阅读,一般把关键字大写,而操作数小写。
• 由于编程的时候随时切换大小写比较麻烦,可以在 ABAP编 辑器中用“规范化打印机”按钮来自动转 换。
• 如果连续多行的第一个关键字相同,可以使用链语 句 链语句的方式 减少输入
WRITE text1. WRITE text2. WRITE text3. 可以写成:WRITE: text1,text2,text3.
分支结构(IF,CASE)
使用IF的条件分支
IF <condition1>. <statement block>
ELSEIF <condition2>. <statement block>
ENDCASE.
例子:
• DATA: TEXT1 VALUE 'X', TEXT2 VALUE 'Y', TEXT3 VALUE 'Z', STRING VALUE 'A'.
注释:
• 注释行由第一列的星号(*)开头,并且必须写在第 一 列,前面不能有空格。
• 编译器忽略注释行,不会执行。 • 在行末的注释用双引号(”)作为前导。
ABAP语言的基本元素
数据类型
• D :日期类型,格式为YYYYMMDD,长度为8 • T :时间类型,格式为HHMMSS,长度为6 • I :整数类型,长度为4 • F :浮点类型,长度为8 • STRING:变长字符串类型 • XSTRING:变长字节序列类型 • C :字符串类型,定义变量时指定字符个数 • N :数字字符串类型,定义变量时指定数值字符个数 • X :字节序列类型,定义变量时指定字节数 • P :组合数值类型,定义变量时指定长度和小数点后位
ST源自文库RT-OF-SELECTION
AT USER-COMMAND 这些关健字在ABAP中定义处理块,处理块是当特定事 件发生时进行处理的语句组
ABAP程序的关健字
3.控制关健字 IF ,WHILE,CASE
4.操作关健字 WRITE,MOVE,ADD 用于处理数据
语法格式
• 定义数据对象
– DATA name TYPE type_name 例: DATA number TYPE I. 定义了一个对象number其类型为I DATA num TYPE I value 18. 定义了一个对象num其类型为I初始值为18.
SAP三层体系结构
• 表现层(Presentation Layer):这是SAP用户和 R/3系统交流的接口,用户在这一层对SAP系统进行 操作。这层将用户的命令或者操作传送给R/3系统, 然后系统进行相应的处理后把数据返还给用户。
• 应用层(Application layer):这层包括一个或 者多个应用服务器和一个消息服务器。每一个应用 服务器包括一系列服务以便运行应用程序。所有的 服务分置在这些应用服务器之中,其实用户需要的 只是其中的一个应用服务器,多个服务器之间传递 信息以决定用户到底需要的是哪个服务器的服务。
数
ABAP运算
• 数值运算(在ABAP中数学表达式可以任意多层嵌套)
– 算术运算
– 数学函数
– 时间日期运算
• 逻辑表达式
– 通用逻辑运算符
EQ( = ) NE( <> ) LT( < ) LE( <= ) GT( > ) GE( >= )
– IS操作符
• IS INITIAL 检查字段是否为初始值