- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程内容介绍SAP程序主要类型REPORT程序基本结构和各个事件ABAP基础语法SAP程序主要类型 (一)1.可执行程序?(程序类型为 1)可执行程序的特点是可以直接执行,而无需事务码,这个也是一般报表开发最常用的程序类型。我们可以在 SE38 中直接点击执行按钮或按 F8 键来运行一个可执行程序。2.为屏幕绘制器画出的屏幕所用的模块池?(程序类型为 M)模块池包含了来自业务的屏幕模块的处理步骤,它只能通过事务码或者菜单功能调用。3.包含程序?(程序类型为 I)包含了不能独立运行的程序代码,也就是说,无论你是在 SE38 里用执行功能还是通过事务码或菜单调用,都无法打开一个包含程序。它们的作用主要是让程序变得清晰和可以被重用,在其他程序里,用 INCLUDE 语句可以把一个包含程序加到程序里。最终的效果相当于用被包含的程序里的全部内容替换调 INCLUDE 语句。4.子程序?(程序类型为 S)只包含被外部 PERFORM 语句调用的程序块。也就是说,只包含形如 FORM ... ENDFORM 块的程序代码,从外部程序里,用 PERFORM IN PROGRAM [IF FOUND]. 来调用。SAP程序主要类型 (二)5.函数组?(程序类型为 F)包含了函数模块。函数组和函数模块用函数制作器进行管理,事务码 SE37。在创建函数组和函数模块时,函数制作器把程序类型设置为 F。6.接口池?(程序类型为 J)包含了接口。类和接口都在类制作器中管理,事务码 SE24。7.类池?(程序类型为 K)包含了类。类和接口都在类制作器中管理,事务码 SE24。报表事件顺序开始运行程序LOAD-OF-PROGRAM初始化过程INITIALIZATIONSELECTION-SCREEN OUTPUT选择屏幕处理AT SELECTION-SCREEN数据处理START-OF-SELECTION列表处理END-OF-SELECTIONTOP-OFEND-OFAT LINE-SELECTION/AT USER-COMMAND事件块顺序事件块的简单处理过程:ABAP程序运行的时候,INITIALIZATION首先被调用;经过初始化的输入屏幕会显示在表示服务器;用户离开输入屏幕的时候,START-OF-SELCTION事件会被自动调用;结果数据会以列表的形式显示在第二个屏幕上; |第页事件块的语法源代码中的事件块顺序不影响它们的执行顺序第页 |事件块详解(1)INITIALIZATION 通常在此事件块中设定输入屏幕字段的初始值 例如:INITIALIZATION . P_DATE = . 效果: 输入屏幕的日期字段初始显示值为2011年1月1日第页 |事件块详解(2)AT SELECTION-SCREEN OUTPUT 通常在此事件块中进行对即将输出的选择屏字段的属性进行设置 例如: AT?SELECTION-SCREEN?OUTPUT.?LOOP?AT?SCREEN.?IF?screen-name?=?P_MATNR.?screen-input?=?0.?MODIFY?SCREEN.?ENDIF.?ENDLOOP.效果:将选择屏上的P_MATNR字段设为不可输入状态第页 |事件块详解(3)AT SELECTION-SCREEN 通常在此事件块中进行用户输入数据的合法性检查,发现错误则以消息的形式给出警示,直到用户输入正确的数值 例如:AT SELECTION-SCREEN . IF P_DATE = SPACE . MESSAGE E001 . ENDIF. 效果: 如果字段P_DATE为空,则程序会用消息001“日期字段不能为空!”来提示用户必须输入一个日期。而且输入屏幕会等待用户输入,知道该字段数值合法第页 |事件块详解(4)START-OF-SELCTION 通常在此事件中针对业务需求进行系统数据的查询例如: start-of-selection . perform get_data_for_oil .效果: 在输入屏幕用户按下执行按钮后,子程序get_data_for_oil被执行, 在其中获得业务相关的数据存放到内表或者其它变量,这些数据在END-OF-SELECTION事件块中被输出第页 |事件块详解(5)END-OF-SELCTION 通常在此事件中进行结果清单的输出例如: end-of-selection . write : 23(1) sy-vline, 24(20) tab-gas_plan right-justified ,效果: 数据以清单的形式输出第页 |事件块详解(6)TOP-OF在此事件块中设计输出清单的页头 例如:TOP-OFwrite : /1(240) ‘现金日记帐 centered .
文档评论(0)