F4帮助
在INITIALIZATION之后添加 AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_month-low 事件,s_month-low为要添加的搜索帮助。
下面列出关于月份和库存地F4的部分代码
月份:
DATA gv_month TYPE isellist-month.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_month-low.
gv_month = 'S_MONTH-LOW'.
PERFORM s4_help_month USING gv_month.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_month-high.
gv_month = 'S_MONTH-HIGH'.
PERFORM s4_help_month USING gv_month.
FORM s4_help_month USING gv_month .
CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
EXPORTING
actual_month = sy-datum+0(6)
IMPORTING
selected_month = gv_month
EXCEPTIONS
factory_calendar_not_found = 1
holiday_calendar_not_found = 2
month_not_found = 3
OTHERS = 4.
ENDFORM. " S4_HELP
库存地
DATA gv_dynprofld TYPE help_info-dynprofld.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_lgort-low.
gv_dynprofld = 'S_LGORT-LOW'.
PERFORM s4_help USING gv_dynprofld.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_lgort-high.
gv_dynprofld = 'S_LGORT-HIGH'.
PERFORM s4_help USING gv_dynprofld.
FORM s4_help USING gv_dynprofld.
TYPES:BEGIN OF typ_lgort,
lgort TYPE t001l-lgort,
lgobe TYPE t001l-lgobe,
END OF typ_lgort.
DATA lt_logrt TYPE TABLE OF typ_lgort.
DATA lv_lgort TYPE dfies-fieldname.
SELECT lgort lgobe
FROM t001l
INTO TABLE lt_logrt
WHERE werks IN s_werks.
SORT lt_logrt BY lgort .
DELETE ADJACENT DUPLICATES FROM lt_logrt.
lv_lgort = 'LGORT'.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = lv_lgort
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = gv_dynprofld
value_org = 'S'
TABLES
value_tab = lt_logrt
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.
ENDFORM. " SE_HELP
posted on 2019-06-28 11:00 Shadow.Ling 阅读(160) 评论(0) 编辑 收藏 举报