ABAP开发培训入门PPT教学课件

上传人:日度 文档编号:133590719 上传时间:2020-05-28 格式:PPT 页数:39 大小:764.50KB
返回 下载 相关 举报
ABAP开发培训入门PPT教学课件_第1页
第1页 / 共39页
ABAP开发培训入门PPT教学课件_第2页
第2页 / 共39页
ABAP开发培训入门PPT教学课件_第3页
第3页 / 共39页
ABAP开发培训入门PPT教学课件_第4页
第4页 / 共39页
ABAP开发培训入门PPT教学课件_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《ABAP开发培训入门PPT教学课件》由会员分享,可在线阅读,更多相关《ABAP开发培训入门PPT教学课件(39页珍藏版)》请在金锄头文库上搜索。

1、ABAP开发培训 什么是ABAP AdvancedBusinessApplicationProgramming高级商业应用程序设计 是SAP专有的开发语言 SAP的应用程序就是用ABAP语言开发的 ABAP开发培训 ABAP的开发环境展示 ABAP开发培训 SAP的三层架构 表示层 应用层 数据库 ABAP开发培训 ABAP程序的种类 报表最常见的ABAP程序 展示数据 比如财务的三大报表 接口常见的接口如RFC BAPI iDoc Webservice 这些都是以FunctionModule为基础的 增强对标准程序的增强 改动 Dialog带交互的程序 SAP标准的事物码很多就是Dialog

2、 ABAP开发培训 ABAP的数据类型 基本数据类型 ABAP开发培训 用户定义的基本数据类型完全是以预定义的基本数据类型为基础的 使用TYPES语句定义自己的基本数据类型 TYPES NUMBERTYPEI LENGTHTYPEPDECIMALS2 CODE 3 TYPEC DATA NO FLIGHTSTYPENUMBER NO PASSENGERSTYPENUMBER DISTANCETYPELENGTH HEIGHTTYPELENGTH CITY CODETYPECODE COUNTRY CODETYPECODE 数据类型可以在程序内部定义 但只能程序内部用 也可以在程序外部定义 这样

3、全局都可以使用 事物码SE11 ABAP的数据类型 用户定义的基本数据类型 ABAP开发培训 两种结构化数据类型 结构 Structure 和内表 InternalTable Structure 本质上讲是一个由多个字段组成的字段串 在程序中只能存储一条数据 如果不好抽象化 可以理解为Excel的一行 InternalTable 多行多列 可以理解为一个Structure纵向拉长 内表分3种 标准表 排序表 哈希表 结构和内表可以在程序内部定义 但只能程序内部用 也可以在程序外部定义 这样全局都可以使用 事物码SE11 ABAP的数据类型 结构化数据类型 ABAP开发培训 TYPES语句定义类

4、型 DATA语句声明变量 如刚才用到的例子 TYPES NUMBERTYPEI LENGTHTYPEPDECIMALS2 CODE 3 TYPEC DATA NO FLIGHTSTYPENUMBER DISTANCETYPELENGTH CITY CODETYPECODE CONSTANTS语句定义常量 CONSTANTSPITYPEPDECIMALS5VALUE 3 14159 Hint 变量的命名参照开发规范 ABAP程序的数据定义 ABAP开发培训 实际应用中 更多是直接用LIKE语句定义变量 DATA ZMATNRLIKEMARA MATNR 物料号ZMTARTLIKEMARA MTA

5、RT 物料类型或者DATAZMATNRLIKEMARA MATNR DATAZMTARTLIKEMARA MTART 两者的意义完全相同 DATA 变量名 LIKE 表 字段名 结构 字段名 DATA 变量名 LIKE 系统标准变量 ABAP程序的数据定义 ABAP开发培训 结构变量的定义 结构DATA BEGINOFGS MARC MATNRLIKEMARC MATNR WERKSLIKEMARC WERKS PSTATLIKEMARC PSTAT BWTTYLIKEMARC BWTTY EKGRPLIKEMARC EKGRP ENDOFGS MARC 这是一个5个字段的结构 G代表glob

6、al S代表Structure 结构也可以用SE11事物码在系统里定义 所有程序都可以使用 但命名必须以Z开头 Hint 结构变量的命名有规则 参见开发规范 ABAP程序的数据定义 ABAP开发培训 结构变量的定义 内表DATA BEGINOFGS MARC MATNRLIKEMARC MATNR WERKSLIKEMARC WERKS PSTATLIKEMARC PSTAT BWTTYLIKEMARC BWTTY EKGRPLIKEMARC EKGRP ENDOFGS MARC DATA GT MARCLIKESTANDARDTABLEOFGS MARC GT MARC就是一个标准内表 Hi

7、nt 结构变量的命名有规则 参见开发规范 ABAP程序的数据定义 ABAP开发培训 结构变量的定义 结构和内表的多种定义方式鉴于SAP有大量标准的数据类型供参考 结构变量的命名有多种方式 例如 MARC是系统标准表 MAAPV是标准结构 自建结构和自建表同例 结构 DATAGS MARCLIKEMARC 内表 DATAGT MARCLIKETABLEOFMARC 结构 DATAGS MAAPVLIKEMAAPV 内表 DATAGT MAAPVLIKETABLEOFMAAPV 结构 DATAGS MARC2LIKELINEOFGT MARC 内表 DATAGT MAAPV2LIKETABLEOF

8、GS MAAPV Hint 结构变量的命名有规则 参见开发规范 ABAP程序的数据定义 ABAP开发培训 结构变量的定义 内表和工作区 工作区是相对于内表而言的 在操作内表时 系统需要先把数据从内表取出来存放到对应的工作区 再进行相关的操作 通常情况下 定义一个内表的同时需要定义一个工作区 工作区通过结构定义 DATAGS MARCLIKEMARC DATAGT MARCLIKETABLEOFMARC 结构GS MARC就可以作为内表GT MARC的工作区 其他定义方式同此例 ABAP程序的数据定义 ABAP开发培训 结构变量的定义 表头 DATAGT MARCLIKEMARCOCCURS0W

9、ITHHEADERLINE 此语句会声明一个带有同名表头的内表 表头可作为工作区 这种命名方式会节省一些代码量 但不推荐使用 容易混乱 还是推荐使用一个内表 一个工作区的方式 有些比较旧的程序用的是这种带表头的内表 在这些程序里 以GT MARC为例 GT MARC表示工作区 GT MARC MATNR表示字段 GT MARC 表示整个内表 ABAP程序的数据定义 ABAP开发培训 赋值 DATAVAR1 3 TYPECVALUE abc DATAVAR2 3 TYPEC MOVEVAR1TOVAR2 VAR2 VAR1 VAR2 abc 以上3条语句意义返回结果相同 赋值时注意数据格式 要求

10、数据格式相同 或者两边存在转换规则 否则会报错 基本ABAP语句 ABAP开发培训 运算 二元操作符包括 加法 减法 乘法 除法 乘方DIV 整除忽略余数MOD 取余数 需要注意 圆括号和操作符都是关键字 需要跟操作数之间至少用一个空格分开 1 2 3应该写成 1 2 3 基本ABAP语句 ABAP开发培训 条件 基本ABAP语句 ABAP开发培训 循环 ABAP的循环分四种 DO WHILE ENDDO ENDWHILE LOOPSELECT ENDLOOP ENDSELECT 基本ABAP语句 ABAP开发培训 循环 DO ENDDO DO和ENDDO之间的语句块会无限运行 直到遇到条件控

11、制的跳出循环语句如EXIT等 在DO语句中还可以指定最多运行的次数 否则的话 将会出现无限循环无限循环 WHILE ENDWHILE 在WHILE和ENDWHILE之间的语句块会一直执行 直到不再满足WHILE后面所指定的条件 WHILE循环用的不多 基本ABAP语句 ABAP开发培训 循环 LOOP ENDLOOP 循环读取内表的数据到工作区 供程序处理 实际应用最多的循环语句 一般情况下ABAP推荐把数据从数据库 硬盘 读到内表 内存 几乎有程序就有内表 有内表就有LOOP循环 SELECT ENDSELECT 循环读数据库 影响效率 不建议使用 建议用FORALLENTRIESIN语句一

12、次性把数据读入内表 基本ABAP语句 ABAP开发培训 消息 MESSAGE语句向程序的用户发送对话消息 使用MESSAGE语句必须指定三位数的消息号和消息类 MESSAGEE001 ZFI001 事物码SE91维护消息类和消息 也可以在程序里写硬消息 MESSAGE 程序运行错误 TYPE E 但不推荐使用这种不规范的方式 基本ABAP语句 ABAP开发培训 操作结构和内表 结构访问结构里的字段 GS MARC MATNR 结构里最常用的语句是MOVE CORRESPONDING语句 把一个结构的内容同时全部拷贝到另一个结构中 只有源结构和目标结构中有相同名称的组件才会拷贝 而目标结构中名称

13、无法对应的组件保持不变 需要注意 如果两个结构中同名的组件有不同定义的话 拷贝时可能会出错 基本ABAP语句 ABAP开发培训 操作结构和内表 内表访问单条记录 一般来说 需要一个与内表行结构相同相同的工作区来处理单条记录 APPEND 往内表的最后追加一条记录 只能用于标准表 INSERT 向内表插入一条记录 在标准表里跟APPEND的效果一样 在排序表里就插入到键指定的位置 在哈希表里则根据哈希运算法则插入到指定位置 READTABLE 把表的指定行拷贝到结构中 MODIFY 使用结构的内容重写表的指定行 DELETE 删除表的指定行 COLLECT 把结构中的内容累加到内表具有相同键的行

14、上 这时 只有非键字段才执行累加 并且只有非键字段都是数值的时候才能执行这个语句 一般内表里多个字段需要同时汇总时会用到COLLECT语句 比如财务的一些报表 基本ABAP语句 ABAP开发培训 操作结构和内表 内表访问多条记录 结果集 处理结果集合 LOOP ENDLOOP LOOP语句一条一条的读出内表的数据行 写入INTO字句指定的结构中 结构的内容可用于输出 或者修改后写回内表 DELETE 删除满足条件的所有行 INSERT 把一个内表中的多行拷贝到另一个内表中 APPEND 把一个内表中的多行追加到另一个标准表中 想修改内表的某一行只能先把那行读到工作区 修改工作区后再写回内表 而

15、不能以数组的方法访问到内表的指定一行 这是跟其他语言很不一样的地方 基本ABAP语句 ABAP开发培训 操作结构和内表 内表使用索引读表 标准表和排序表 LOOP中用FROM TO子句可以读指定索引段的记录 READ中用INDEX子句可以读指定索引的一条记录 使用条件读表 LOOP中用WHERE子句可以读满足一定条件的记录 READ中用WithKEY子句可以读满足主键条件的记录 内表排序 标准表和排序表可以使用SORT语句对指定字段进行排序 如果没有指定升序或者降序就默认使用升序 基本ABAP语句 ABAP开发培训 操作结构和内表 内表 REFRESH 清除整个内表的内容 释放部分内存 保留一

16、些以备后续操作 CLEAR 对于没有表头的内表 跟REFRESH一样 清除内表的内容 对于有表头的内表 则只初始化表头 FREE 清除整个内表的内容 释放所有内存 在程序里 当内表以后不再使用的时候可以使用FREE 这样能尽量多释放一些不用的内存 基本ABAP语句 ABAP开发培训 数据获取SAP后台可以连接多种数据库 ORACLE DB2 SQLSERVER SYBASE 每种数据库都有自己特点的SQL语法 不可能在开发时根据后台数据库的种类选择SQL语法 所以SAP用的是无关SQL标准的开放SQL 执行时由SAP负责转化成各种数据库能运行的SQL 数据库操作 ABAP开发培训 数据获取使用开放SQL的SELECT语句来执行查询 它包含几个基本的组成部分 基本语法 SELECTFROMINTO WHERE SELECT后面的块说明了需要读表的哪些字段 FROM后面的块说明了需要读哪个数据源 数据源可以是表或者视图 INTO后面的块说明了读出的字段要放到哪个目标数据对象中 结构或内表 WHERE后面的块说明了读数据的基本条件 可选 SELECTMATNRWERKSPSTATBWTTYE

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号