原著作日期 : 2001/03/29
Outline
共用程式片段(Include file)
共用副程式庫(Subroutine pool)
共用功能模組(Function pool)
共用Transaction (Call transaction)
共用報表(Submit report)
共用對話窗模組(Dialog module pool)
共用程式片段(Include file)
•
共用程式片段Program type : ‘I’ (Include program)
•
叫用方式 : Include Zxxxxx.
•
Include programs are used to
–
1. divide very large programs into smaller more
manageable units
–
2. create common program components
•
就上面第二點而言, 兩個缺點:
–
data dependence, not information hiding
–
not modularization
共用副程式庫(Subroutine pool)
•
副程式庫Program type : ‘S’ (subroutine pool)
•
用來存放可共用的副程式(Form)
•
副程式庫宣告方式 : Report Zxxxxx.
•
程式庫宣告方式 : FORM abc. … ENDFORM.
•
叫用共用副程式庫中的副程式 : PERFORM abc(Zxxxxx).
•
優點:
–
Easy developing, easy calling
–
Grouping different purpose subroutines into
pools
–
Data independent, data transmitting via
parameters
共用功能模組庫(Function pool)
•
功能模組庫Program type : ‘F’ (Function group)
•
Function pool 用來存放Function
module
•
功能模組庫宣告方式 : FUNCTION-POOL Zxxx.
•
功能模組宣告方式 : FUNCTION abc. …. ENDFUNCTION.
•
叫用功能模組庫中的功能模組 : CALL FUNCTION abc.
•
優點:
–
same as subroutine pool
–
Remote function call supported
–
不必記得function module放在哪個function group只要記得function module name即可
共用Transaction (Call transaction)
叫用方式 : CALL TRANSACRION “Zxx”.
2種應用方式:
1. SET PARAMETER 方式: Call transaction … and skip first screen, put value into parameters of input fields
2. BATCH INPUT 方式: Call transaction … using BDCDATA mode 'E' update 'S’ messages into MESSTAB : put value
into fields via BDC structure
共用報表(Submit report)
•
共用報表Program type : ‘1’ (report)
•
報表程式宣告方式 : REPORT Zxxxxx.
•
叫用報表程式 : SUBMIT Zxxxxx.
•
缺點:
–
Parameters transmitting via EXPORT/IMPORT
commands
–
變數必須宣告以相同的名稱, 模組化程度不足
共用對話窗模組庫(Dialog module pool)
•
Program type : ‘M’ (module pool)
•
共用對話窗模組庫宣告方式 : PROGRAM Zxxxxx.
•
叫用方式 : CALL DIALOG “Zabc”.
•
可將許多共用對話窗模組,放在一個Module pool內供許多程式叫用
•
優點:Function module不必記得Dialog module放在哪個module pool要記得dialog module name即可