我有一个匹配代码的输入参数的意甲,我需要此字段(MatchCode)将取决于文本参数。例如,类似的东西:
SELECTION-SCREEN BEGIN OF BLOCK block02 WITH FRAME TITLE text-002.
PARAMETERS:
p_mona TYPE ZTIPOSOL GROUP rad1 MATCHCODE OBJECT ZFIMC002,
p_fcomp TYPE SY-DATUM MODIF ID A OBLIGATORY.
SELECTION-SCREEN END OF BLOCK block02
ABAP Development
不,你不能。但是,您可以在AT SELECTION-SCREEN ON VALUE-REQUEST
事件中动态填充搜索帮助值:
DATA: LT_VBAK TYPE STANDARD TABLE OF VBAK.
PARAMETER P_VBELN TYPE VBELN.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VBELN.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'VBELN'
DYNPPROG = SY-REPID
DYNPNR = SY-DYNNR
DYNPROFIELD = 'P_VBELN'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = LT_VBAK
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.
其中LT_VBAK
是一个内部表,您需要用值填充。如果您的值取决于其他选择屏幕参数,请使用DYNP_VALUES_READ
FM从屏幕上读取它们。
另一种方法不是动态填充值,而是在DDIC中创建单个搜索帮助并创建搜索帮助退出,该搜索将根据某些条件控制Shelp行为。