abap开发培训教材.ppt

上传人:F****n 文档编号:97207230 上传时间:2019-09-02 格式:PPT 页数:64 大小:787.50KB
返回 下载 相关 举报
abap开发培训教材.ppt_第1页
第1页 / 共64页
abap开发培训教材.ppt_第2页
第2页 / 共64页
abap开发培训教材.ppt_第3页
第3页 / 共64页
abap开发培训教材.ppt_第4页
第4页 / 共64页
abap开发培训教材.ppt_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《abap开发培训教材.ppt》由会员分享,可在线阅读,更多相关《abap开发培训教材.ppt(64页珍藏版)》请在金锄头文库上搜索。

1、ABAP开发培训 SAP ABAP顾问 余裕辉 2007年10月22日,ABAP开发培训目标,让开发人员对SAP ABAP的开发流程、ABAP语法及开发的基本技术有深入的了解和认识,培训方式,知识讲解 实例演示 练习&QA,培训内容,ABAP开发过程中常用的TCODE ABAP开发的简要流程 ABAP报表开发 Query的使用,ABAP开发过程中常用的TCODE,SE80 ABAP开发平台 SE11 数据字典 SE16 查看表数据 SE38 程序编辑器 SE37 函数编辑器 ST05 执行跟踪 SE10 传输组织器 SE93 事务码维护 SE30 ABAP运行时间分析 ABAPDOCU ABA

2、P文档 SHDB 屏幕录制 SMARTFORMS 表单维护,ABAP开发的简要流程,Keyuser提出需求,Add-on与keyuser商讨需求,Add-on开发程序,Keyuser测试,传 输,Add-on修改程序,Functional Spec (书面&电子),UAT(书面&电子),Transport request,Modify Spec,ABAP开发的简要流程,1. 创建程序(SE80) 2. 编写代码(SE80) 3. 激活程序(SE80) 4. 创建事务码(SE93) 5. 维护Request number(SE10),练习一,练习create程序和request number.(

3、5),报表程序分类,普通报表程序 输出结果格式固定,不能对其进行交互式操作; 交互式报表程序 通过特定的触发事件,比如双击、菜单、按钮和功能键等,可以对报表结果进行操作;,报表程序结构,处理块的类型,事件块,组成报表程序的基本单位; 原则上每个事件块由各自的关键字为起始,不同的事件块执行不同的任务; 事件块由ABAP运行时环境调用,其调用顺序固定,与程序编码顺序无关; 缺省的事件块START-OF-SELECTION,事件块,INITIALIZATION AT SELECTION-SCREEN START-OF-SELECTION GET END-OF-SELECTION TOP-OF-PAG

4、E END-OF-PAGE,事件块详细讲解,事件块的简单处理过程: ABAP程序运行的时候,INITIALIZATION首先被调用; 经过初始化的输入屏幕会显示在表示服务器; 用户离开输入屏幕的时候,START-OF-SELCTION事件会被自动调用; 结果数据会以列表的形式显示在第二个屏幕上;,事件块的语法,源代码中的事件块顺序不影响它们的执行顺序,事件块编码规则(1),INITIALIZATION 通常在此事件块中设定输入屏幕字段的初始值,例如: INITIALIZATION . P_DATE = 20030201 . 效果: 输入屏幕的日期字段初始显示值为2003年2月1日,事件块编码规

5、则(2),AT SELECTION-SCREEN 通常在此事件块中进行用户输入数据的合法性检查,发现错误则以消息的形式给出警示,直到用户输入正确的数值,例如: AT SELECTION-SCREEN . IF P_DATE = SPACE . MESSAGE E001 . ENDIF. 效果: 如果字段P_DATE为空,则程序会用消息001“日期字段不能为空!”来提示用户必须输入一个日期。而且输入屏幕会等待用户输入,知道该字段数值合法,事件块编码规则(3),START-OF-SELCTION 通常在此事件中针对业务需求进行系统数据的查询,例如: start-of-selection . per

6、form get_data_for_oil . 效果: 在输入屏幕用户按下执行按钮后,子程序get_data_for_oil被执行, 在其中获得业务相关的数据存放到内表或者其它变量,这些数据在END-OF-SELECTION事件块中被输出,事件块编码规则(4),END-OF-SELCTION 通常在此事件中进行结果清单的输出,例如: end-of-selection . write : 23(1) sy-vline, 24(20) tab-gas_plan right-justified , 效果: 数据以清单的形式输出,事件块编码规则(5),GET 从逻辑数据库中得到数据(较少用) TOP-

7、OF-PAGE 在此事件块中设计输出清单的页头,例如: TOP-OF-PAGE write : /1(240) 汽柴油日出厂情况表 centered . write : /20(8) 日期: , 29(10) s_date , 180(6) 单位: , 190(10) 吨 .,事件块编码规则(6),END-OF-PAGE 在此事件中设定输出清单的页脚 报表编程模板:,例如: END-OF-PAGE . Write : 制作人 , p_name .,练习二,建立报表程序事件块(5),程序名,REPORT rep. Additions: 1. . NO STANDARD PAGE HEADING

8、2. . LINE-SIZE col 3. . LINE-COUNT n(m) 表单输出每页由n行,其中的m行作为页脚; 4. . MESSAGE-ID mid 消息对象 5. . DEFINING DATABASE ldb 使用逻辑数据库,自动产生,Tables 语句,基本格式 TABLES dbtab. Dbtab是指ABAP字典的一个数据库对象,可以是透明表格、视图和结构; 该语句的作用是声明了一个表工作区,类似于C语言里面的STRUCTURE和PASCAL语言里面的RECORD; 这个表工作区由多个字段组成,其名称、类型和dbtab的字段完全相同; ABAP字典对象中字段的类型自动的转

9、换为ABAP程序的类型; 表工作区通常是一个全局变量。,ABAP数据类型,Types语句,定义自定义数据类型 语法: types . 定义简单数据类型: TYPES name(10) type c.,DATA语句,定义数据变量 语法: DATA 定义一个简单类型的变量 DATA: COUNTER TYPE I VALUE 1, FLAG TYPE C length 10, Flag(10), WEIGHT TYPE P DECIMALS 2 VALUE 1.25. DATA NAME LIKE FLAG.,Internal Table 内表,ABAP中的内表相当于其他语言中的矩阵,在操作上有复

10、制、删除、插入、修改等功能,分为标准表、排序表和哈希表三种类型。 使用 DATA 定義 若使用DATA來定義Internal Table, 可分成要不要有HEADER LINE, HEADER LINE 就是所謂的 WORK AREA, 用在數據的存取上. 語法: DATA OCCURS WITH HEADER LINE Example: DATA VECTOR TYPE I OCCURS 10 WITH HEADER LINE. DATA: begin of wa occurs 0, col1(10), col2 type I, end of wa. DATA itab like table

11、 of wa with header line.,定义输入屏幕,用SELECTION-SCREEN语句来定义输入屏幕,SELECTION-SCREEN语法,特殊效果,输入字段设计,PARAMETERS 语句 SELECT-OPTIONS语句,PARAMETERS语法,Select-options语法,WRITE语句,按照指定的格式把变量里面的数据输出到屏幕 语法:,WRITE语句的选项,根据选项的不同,WRITE语句可以输出到屏幕、输出到变量、以复选框的形式输出、以图标的格式输出,练习三,编写一支简单的报表程序,选择屏幕上创建一parameters,并设置必须输入,之后将输入的值赋给已定义好的

12、字符变量,最后输出该变量的值,同时换行输出自己的姓名(20),OPEN SQL 语法,R/3對於存放在Relation Database 的資料可使用 SQL 指令讀取或處理, 指令種類可分成DDL (Data Definition Language)指令, 如CREATE, 及DML (Data Manipulation Language), 如 SELECT及INSERT等。 處理方式分成 OPEN SQL 及 NATIVE SQL, 前者在處理時, Database 與Command Interpreter 間有一Buffer區, 如SELECT * FROM, 後者則直接處理資料庫,

13、如 EXCE SQL SELECT等。 兩個重要的系統變數: SY-SUBRC: 傳回 0 表成功執行指令, 4 表未找到符合條件資料 SY-DBCNT: 正處理的資料筆數,内表的操作,内表操作: Append Collect Read Modify Delete Loop Sort,APPEND ITAB,語法: APPEND LINES OF FROM TO TO 將的元素加入至中, 可選取自至的範圍 Example: APPEND LINES OF ITAB TO JTAB. ITAB-COL1 = 1. ITAB-COL2 = 2. APPEND ITAB.,COLLECT ITAB,

14、在加入新值时将有相同的standard key(非数值字段)的数值字段内容进行汇总 語法: COLLECT INTO Example: DATA: BEGIN OF ITAB OCCURS 3, COL1(3) TYPE C, COL2 TYPE I, END OF ITAB. ITAB-COL1 = ABC. ITAB COL2 = 10. COLLECT ITAB. ITAB-COL1 = XYZ. ITAB-COL2 = 20. COLLECT ITAB. ITAB-COL1 = ABC. ITAB-COL2 = 30. COLLECT ITAB. “汇总COL2 至 COL1=ABC

15、的元素上 執行結果: ABC 40 XYZ 20,READ ITAB,語法: READ TABLE INTO INDEX 自指定位置 讀取元素資料 Example: READ TABLE ITAB INTO LINE INDEX 5 讀取 ITAB的第5個元素資料, 放入 LINE的欄位中,MODIFY ITAB,語法: MODIFY FROM INDEX TRANSPORTING WHERE TRANSPORTING : 指定異動的欄位名稱 Example: LINE-COL1 = 4. LINE-COL2 = 100. MODIFY ITAB FROM LINE. 將目前位置元素以LINE

16、的內容異動 Example: LINE-COL1 = 10. MODIFY ITAB FROM LINE INDEX 3 TRANSPORTING COL1. 將第三個元素的COL1欄位異動為 10,DELETE ITAB,語法: DELETE INDEX Example: DELETE ITAB INDEX 4 刪除第四個元素 加上刪除條件: DELETE FROM TO WHERE Example: DELETE ITAB FROM 3 TO 10. 刪除第3至第10個元素,LOOP AT ITAB,語法: LOOP AT INTO FROM TO WHERE ENDLOOP. 根據設定的範圍選取原素資料, 讀完後自動移往下一筆 Example: LOOP AT ITAB INTO LI

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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