为screen上的输入框增加F4搜查功能
定义内表:
data
:LT_ZFI_FJZD1
type
table
of
ZFI_FJZD1
with
header
line
.
1`在screen的 PAI 上code:
PROCESS AFTER
INPUT.
process on value-request. "输入字段的响应
field COBL-ZZFI01 module f4_help_for_ZZFI01.
process on value-request. "输入字段的响应
field COBL-ZZFI01 module f4_help_for_ZZFI01.
2`编写MODULE
F4_HELP_FOR_ZZFI01.
module F4_HELP_FOR_ZZFI01
input.
data:lt_ZFI_FJZD1 type table of ZFI_FJZD1 with header line.
select * into table lt_ZFI_FJZD1
from zfi_fjzd1.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'COBL-ZZFI01' "大写,可选值内表的字段名
value_org = 'S' " 就写'S'
dynpprog = SY-REPID "返回的输入框所在的main program
dynpnr = SY-DYNNR "返回的输入框所在屏幕
dynprofield = 'COBL-ZZFI01' "返回的输入框名
TABLES
value_tab = lt_ZFI_FJZD1 " 可选值的内表
EXCEPTIONS
parameter_error = 1
no_values_found = 2
others = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
endmodule. " F4_HELP_FOR_ZZFI01 INPUT
data:lt_ZFI_FJZD1 type table of ZFI_FJZD1 with header line.
select * into table lt_ZFI_FJZD1
from zfi_fjzd1.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'COBL-ZZFI01' "大写,可选值内表的字段名
value_org = 'S' " 就写'S'
dynpprog = SY-REPID "返回的输入框所在的main program
dynpnr = SY-DYNNR "返回的输入框所在屏幕
dynprofield = 'COBL-ZZFI01' "返回的输入框名
TABLES
value_tab = lt_ZFI_FJZD1 " 可选值的内表
EXCEPTIONS
parameter_error = 1
no_values_found = 2
others = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
endmodule. " F4_HELP_FOR_ZZFI01 INPUT
该function是将
lt_ZFI_FJZD1 : value_tab的retfield列显示在屏幕上以供选择,
并返回到 dynpprog-dynpnr-dynprofield 框中.