ABAP的程式碼規範標準

ZCLouis發表於2007-09-19

ABAP程式碼編寫要求

1、單元格式

************************************************************************
* Copyright 2005 C-Bons ZhuHai *
* All Rights Reserved *
*----------------------------------------------------------------------*
* Program Name : ZXXXXX *
* Project : C-Bons SAP Implementation Project *
* Program Title: *
* Created by : DEVXX *
* Created on : 2005/01/01 *
* Version : 1.0 *
* Function Description: *
* *
*----------------------------------------------------------------------*
* Data Table List: *
*如維護操作的表,資料計算來源等表
*----------------------------------------------------------------------*
* Refrence Table List: *
*如聯絡處描敘,輸入幫助等用到的表
*----------------------------------------------------------------------*
* Modification Log: *
************************************************************************
* Date Programmer Correction Number DesingDoc Number *
* YYYY/MM/DD XXXXXXXX DEVK9nnnnnn *
************************************************************************

注意:版本修改資訊中設計文件版本有對應的文件則必須填寫。

單元命名規則

對於複雜的程式,可以將其編寫為多個INCLUDE,不同作用的程式碼放在不同的INCLUDE中,各個INCLUDE的名稱按下表編寫

程式碼的作用 單元名稱

Events(TOP-OF-PAGE等) ZXXXXE01

Subroutines(Form routines) ZXXXXF01

PAI Modules ZXXXXI01

PBO Modules ZXXXXO01

Global Data ZXXXXTOP

Input Help ZXXXXH01

其中:ZXXXX為程式名。

事件程式碼必須遵循編寫順序

Initialization

At Selection-Screen OutPut

At Selection-Screen

START-OF-Selection

At Select-Screen on XXXX

At Select-Screen on value request for XXXXX

At Select-Screen on help request for XXXXX

共用函式的格式

************************************************************************
* Function Name : XXXXX *
* Created by : DEVXX *
* Created on : 2005/01/01 *
* Function Description: *
* *
*----------------------------------------------------------------------*
*引數說明 *
* *
*----------------------------------------------------------------------*
* Modification Log: *
************************************************************************
* Date Programmer Description *
* YYYY/MM/DD XXXXXXXX *
子函式的格式
************************************************************************
* Form Name : XXXXX *
* Created by : DEVXX *
* Created on : 2005/01/01 *
* Form Description: *
* *
*----------------------------------------------------------------------*
*引數說明 *
* *
*----------------------------------------------------------------------*
* Modification Log: *
************************************************************************
* Date Programmer Description *
* YYYY/MM/DD XXXXXXXX *
************************************************************************

(注:標為藍色部分可以省略)

變數命名規則

Type Name:T_

Internal tables (global): gt_

Internal Tables (Local):it

工作區(structure): wa_

全域性變數: g_

區域性變數: l_

Ranges = r_

Selection screen parameter: p_

select-options : s_

函式引數命名規則:

IMPORTING parameters IM_

EXPORTING parameters EX_

CHANGING parameters CH_

返回引數 RE_

變數定義順序

************************************************************************
*DATA DECLARATION *
************************************************************************
*----------------------------------------------------------------------*
* CONSTANTS *
*----------------------------------------------------------------------*
CONSTANTS: C_TOTAL(8) TYPE C VALUE 'WA_TOTAL'.
*----------------------------------------------------------------------*
*TABLES *
*----------------------------------------------------------------------*
TABLES: AFKO, "Order header data PP orders
AFPO, "Order item
JEST, "Object status
RESB, "Reservation/Dependent Requirements
AUFK, "Order master data
MAKT, "Material Descriptions
TJ02T. "System status texts

*----------------------------------------------------------------------*
* TYPES OR TYPE-POOLS *
*----------------------------------------------------------------------*
TYPES: BEGIN OF WA_AUFK,
AUFNR LIKE AUFK-AUFNR, "Order number
AUART LIKE AUFK-AUART, "Order type
LOEKZ LIKE AUFK-LOEKZ, "Deletion flag
OBJNR LIKE AUFK-OBJNR, "Object number
END OF WA_AUFK.

*----------------------------------------------------------------------*
* INTERNAL TABLES AND WORK AREAS *
*----------------------------------------------------------------------*
DATA: IT_AUFK TYPE T_AUFK OCCURS 0.
*----------------------------------------------------------------------*
* GLOBAL VARIABLES *
*----------------------------------------------------------------------*

DATA: G_FLAG.

螢幕編號規則

選擇螢幕編號範圍:1000-1999

錄入螢幕編號範圍:1-999

子螢幕編號範圍:3000-4999

註釋規則

1) 任何全域性變數要簡單解釋作用或使用地方
2) 任何函式超過30行的函式或form必須在關鍵位置加註釋
3) 解釋操作意圖
4) 訊息提示使用規則,訊息請使用ZDEV的標準的訊息文字;
5) 如果標準訊息文字中沒有的,得自己維護註釋裡的建立日期和修改日期必須認證填寫為實際日期,
6) Status命名規則為:Menu+螢幕號,共用的為Menu+Main

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7941665/viewspace-970072/,如需轉載,請註明出處,否則將追究法律責任。

相關文章