ABAP报表程序开发规范

上传人:宝路 文档编号:2138497 上传时间:2017-07-20 格式:DOC 页数:11 大小:87KB
返回 下载 相关 举报
ABAP报表程序开发规范_第1页
第1页 / 共11页
ABAP报表程序开发规范_第2页
第2页 / 共11页
ABAP报表程序开发规范_第3页
第3页 / 共11页
ABAP报表程序开发规范_第4页
第4页 / 共11页
ABAP报表程序开发规范_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《ABAP报表程序开发规范》由会员分享,可在线阅读,更多相关《ABAP报表程序开发规范(11页珍藏版)》请在金锄头文库上搜索。

1、ABAP 报表程序开发规范第 1 页 共 11 页ABAP 报表程序开发规范一、 目的为保证在 R/3系统中使用 ABAP 语言开发报表程序的规范性,特制定本开发规范。在本开发规范的约束下,将源代码与报表开发人的相关性降到最低;即只要具备基本的ABAP 开发技巧,遵循本开发规范,不同的开发人员开发的同样逻辑的源代码应该是基本相同的。二、 适用范围本技术规范适用于捷顺 R/3 系统的所有开发人员和除标准对象外的所有 ABAP 报表程序开发。三、 职责ABAP 开发小组负责程序的开发、传输请求的创建及提交。BASIS小组负责传输请求向 PRD系统的传输。四、开发流程1、 开发人员接收业务顾问提交的

2、开发需求;如果需要,开发人员应当配合业务顾问进行用户需求分析;2、 开发人员根据开发需求在 DEV100 中进行程序开发;3、 开发人员将程序传输至质量保证系统中进行初步测试,测试完毕后通知业务顾问进入用户测试阶段;4、 程序在质量保证系统中经用户测试通过后,开发人员申请将程序传输至生产系统,相关主管审批通过后,BASIS人员负责将传输请求传输至生产系统。5、 如果程序需要作为后台程序运行,需要在传输申请中做出说明,由 BASIS 人员在生产系统中定义后台作业。6、 开发和修改程序都需要填写开发文档。开发文档存放于服务器的专用目录中,每个程序一个文档,新程序需要新建文档,修改程序需要修改原来的

3、程序文档(在原文档基ABAP 报表程序开发规范第 2 页 共 11 页础上追加内容,不允许删除原文档内容),记录本次修改的内容和请求号等信息。开发程序申请传输生产系统中时,同时提交开发文档审核,相关主管需要同时检查程序和文档的规范性。五、 命名规则1、 用户开发对象的命名规则1) 用户开发对象的名称必须以 Z 开头,只能使用字母、数字和下划线。用户开发对象包括开发类、程序、函数组、函数、透明表、结构等。2) 开发类一般使用 ZREPORT,如有特殊需要,可以创建新的开发类。3) 报表程序命名规则:Z_ADDITIVE。其中,XX 为模块名称,现在常用的有以下几种: MMMM 模块,PPPP模块

4、,SD SD 模块,CSCS 模块,FIFI 模块, COCO 模块,BC公共模块,CA 交叉应用;Y 表示程序的类型,目前有四种: R报表程序,E批输入程序,SSmartForm 程序,I接口程序。NN 为序列号,表示该程序在同一模块同类型程序中的编号。比 如 ZSD_R_01,表示SD 模块的一个报表程序。如果业务顾问已经提供需求的编号,则取业务顾问提供的需求编号。ADDITIVE,程序的附加说明,如项目名称等,可以灵活使用,不是必须的部分。如果创建与程序相关的 Include 程序,则 Include 程序的命名中的 ZXX_Y_NN 部分与主程序相同,通过 ADDITIVE部分区分不同

5、的 Include 程序,如ZXX_Y_NNTOP,ZXX_Y_ NNUI 等。特别说明:如果需要替换原程序,建议将原程序拷贝为 ZXX_Y_NNOLD,而新编写的程序的命名与被替换程序的命名一致,不要将新程序命名为 ZXX_Y_NNN或ZXX_Y_NNNEW。这样可以避免需要修改需 求文档编号与程序编号的对应关系,也避免在日后维护中由于对应关系没有更新而导致错误的修改已废除的程序。4) 数据字典对象的命名规则:Z_其中,XX 为模块名称,现在常用的有以下几种:MMMM模块,PPPP 模块,SD SD 模块,CS CS 模块,FI FI模块, COCO 模块,BC公ABAP 报表程序开发规范第

6、 3 页 共 11 页共模块,CA交叉应用;Y 代表对象类型,现在常用的有如下几 种: T透明表, V视图,S结构类,I 内表类型;NAME 为对象的名称。尽量给数据字典对象有意义的名称,不要使用序号;如果定义是配置表及其维护视图,可以使用 3 位的序号。5) 函数组命名方式:Z_其中,NAME 表示函数组有意义的名称,如项目名称,命名应能表示所包含的函数的用途等。6) 函数命名方式:Z_函数必须指定所属的函数组,NAME 表示对函数的说明,使用下划线分隔单词,如 Z_ORDER_MODIFY_ABTNR,表示修改订单的部门( ABTNR)字段。7) 事务代码的命名方式:Z即对于报表程序取主程

7、序命名,但将下划线去掉。如果业务顾问已经给出事务代码的命名,则按照业务顾问的命名 ,只需确保命名以 Z 开始。8) SmartForm 的命名方式:ZS其中,XX 为模块名称,现在常用的有以下几种:模块名称: MMMM 模块,PPPP 模块,SDSD 模块,CSC S 模块,FIFI 模块,COCO 模块,BC 公共模块,CA 交叉应用;NAME 为对象的名称。尽量给 SmartForm 有意义的名称,不要使用序号。2、 SELECT-OPTION 的命名方式:SO_其中,NAME 赋予变量有意义的名称,对于类型参照数据字典中表字段的 SELECT-OPTION,名称尽量参照该字段的名称。3、

8、 PARAMETER 的命名方式:PA_其中,NAME 赋予变量有意义的名称,对于类型参照数据字典中表字段的 SELECT-OPTION,名称尽量参照该字段的名称。4、 程序全局变量的命名方式:G_其中,全局变量的命名以 G 开头,但 SELECT-OPTION、PARAMETER 及 TABLE例外;qualification 主要表示变量的类型, 常用的有以下几种:S结构,T内表,X 标志变量(变量值为SPACE 或X ),C字符(串) ,N 数值型字符串,D 日期ABAP 报表程序开发规范第 4 页 共 11 页型,I整型,P实数;对于类型参照数据字典中表字段的变量,可以省略此 部分;N

9、AME 则赋予变量有意义的名称,对于类型参照数据字典中表字段的变量,名称尽量参照该字段的名称。5、 子程序接口参数的命名方式:P_其中,子程序接口参数的命名以 P 开头;qualification 主要表示参数的类型,常用的有以下几种:S结构,T内表,X标志变量(变量值为 SPACE 或X ),C字符(串) ,N 数值型字符串,D 日期型,I整型,P实数;对于类型参照数据字典中表字段的 参数,可以省略此部分;NAME 则赋予参数有意义的名称,对于类型参照数据字典中表字段的参数,名称尽量参照该字段的名称。6、 局部变量的命名方式:L_其中,子程序中局部变量的命名以 L 开头;qualificat

10、ion 主要表示变 量的类型 ,常用的有以下几种:S结构,T内表,X标志变量(变量值为 SPACE 或X ),C字符(串) ,N 数值型字符串,D 日期型,I整型,P实数;对于类型参照数据字典中表字段的变量,可以省 略此部分;NAME 则赋予变量有意义的名称,对于类型参照数据字典中表字段的变量,名称尽量参照该字段的名称。六、 程序注释程序必须层次清楚,添加详细注释。基本原则是在ABAP 报表详细设计文档主程序和子程序逻辑中每一段描述性的信息,都应该添加在源代码中相应的位置,并且保证标号的顺序和层次的一致性。1、 严格按照下列示例填写程序抬头注释信息*&-*程序名称: *程序目的: *需求编号:

11、 *作 者: *创建日期: *&-*2、 对于子程序,应当在子程序前添加如下注释:ABAP 报表程序开发规范第 5 页 共 11 页*&-*& FORM *&-* *-* * *-*FORM 接口定义.ENDFORM.3、 对于程序中的全局变量(包括 PARAMETER 及 SELECT-OPTION)及子程序中重要的局部变量应该对其含义、用途做出说明;在声明内表数据类型或内表变量(包括全局变量及局部变量)时,内表的每个字段必须对其进行注解;参考如下示例eg.1*供应商信息内表:用于外部输出DATA:BEGIN OF GT_LFA1 OCCURS 0,LIFNR LIKE LFA1-LIFNR

12、, 供应商编码SORTL LIKE LFA1-SORTL, 排序字段NAME1 LIKE LFA1-NAME1, 名称 1KTOKK LIKE LFA1-KTOKK, 供应商帐户组DATLT LIKE LFA1-DATLT, 数据通讯线的号码END OF GT_LFA1.eg.2*复选框, 标志是否前台输出PARAMETERS:PA_XUI AS CHECKBOX. 复选框, 标志是否前台输出4、 对数据库查询、子程序/函数/ 组件的调用、逻辑运算、逻辑处理等程 序处理逻辑要有相应注解;对于用于控制语句与 WHERE 子句里的判断值(常量) ,要有注解或者说明。eg.1*选出 BOM 表头:指

13、定工厂,指定物料,BOM 用途为 2 或 8,替代组为 01SELECT MATNR STLNR WERKS CSLTY FROM MASTINTO TABLE ZHEADWHERE ( WERKS IN IWERKS OR WERKS IN IWERKS1 )AND ( MATNR IN IMATNR OR MATNR IN IMATNR1 )AND ( STLAN = 8 OR STLAN = 2 ) ”类型值为主机或者虚拟 BOMAND STLAL = 01. eg.2*判断用途选择,前台或后台输出ABAP 报表程序开发规范第 6 页 共 11 页IF SOPT EQ X. 输出到前台文件PERFORM EXPORT_DATA_FT. “将数据导出到客户端文件ELSE. 输出到应用服务器文件PERFORM EXPORT_DATA_BG. “将数据导出到应用服务器文件ENDIF.5、 当修改程序时,在程序抬头注释后附加程序修改注释:*&-*修 改 人: *修改日期: *修改说明: *&-*在修改其他开发人员的程序时不要在原代码行上进行修改,也不要直接删除原代码行;应该将要修改的代码行标注为注释行,并按如下例子条件注释,如果:1) 对原代码行进行修改, *-

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

当前位置:首页 > 行业资料 > 其它行业文档

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