在
ABAP/4
中的函数模块是储存在一个函数库中
(library)
,系统提供很多内设的函数模块供
程序中调用也可以自行增加自己的函数模块。
1.
调用已存在的
Function Module
(1).
在
ABAP/4
开发工作台界面中选择函数编制器(事务码
SE37
)可见以下界面:
(2).
选择菜单
“Utility”
中的
“Find”
(快捷键
Ctrl+F
)中输入要寻找的函数模块名称,如输入
STRING*,为找出前五个字符为 STRING 的函数模块:
(3).
输入后按下左上的
“Execute”
按钮
,可见以下界面:
(4). 选择要查询或修改的函数名称,如选择 STRING_LENGTH,如要查询可选择“Display”
按钮
,可见函数模块之各项参数设定:
<1>.Import:
传入的参数名称
,
但实际在程序中使用时刚好与
Export
相颠们
<2>.Export:
传回的参数名称
,
程序中变成
Import
的使用
<3>.Changing:
使用
Call By Value and Return Result
方法的参数
<4>.Tables:
使用的内表参数
<5>.Exceptions:
错误处理参数
如
STRING_LENGTH
为一传回字符串长度的函数,其设定的参数如下:
Import: String
传入一个字符串数据
Export: Length
传回的字符串长度值
(5).
要查看程序内容可按下
“Source Code”
,显示其程序内容如下:
function string_length.
length = strlen(string).
endfunction.
(6).
函数的调用
语法:
CALL FUNCTION <module>
IMPORTING F1=a1….
EXPORTING F1=a1….
CHANGING F1=a1…
TABLES F1=a1…
EXCEPTIONS F1=a1…
示例:
DATA: TEXT(20),
LEN TYPE I.
TEXT = 'ABCDEFGHIJ'.
CALL FUNCTION 'STRING_LENGTH'
EXPORTING STRING = TEXT"传回的参数
IMPORTING LENGTH = LEN.传入的参数名称
WRITE / LEN.
注意 EXPORTING 与IMPORTING 刚好颠倒,
执行所得结果为
10