REPORT ZLS_01_1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS P_KUNNR TYPE C LENGTH 10.
SELECTION-SCREEN END OF BLOCK B1 .
INITIALIZATION.
SELECT KUNNR
FROM KNA1
INTO TABLE @DATA(GT_KUNNR).
SORT GT_KUNNR.
DELETE ADJACENT DUPLICATES FROM GT_KUNNR.
MESSAGE '' TYPE 'S'.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_KUNNR.
PERFORM FRM_SERACH_HELP.
*&---------------------------------------------------------------------*
*& Form FRM_SERACH_HELP
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM FRM_SERACH_HELP .
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
RETFIELD = 'KUNNR'
* PVALKEY = ' '
" DYNPPROG = sy-repid
" DYNPNR = sy-dynnr
DYNPROFIELD = ' P_KUNNR'
* STEPL = 0
* WINDOW_TITLE =
* VALUE = ' '
VALUE_ORG = 'S'
* MULTIPLE_CHOICE = ' '
* DISPLAY = ' '
" CALLBACK_PROGRAM = sy-repid
* CALLBACK_FORM = ' '
* CALLBACK_METHOD =
* MARK_TAB =
* IMPORTING
* USER_RESET =
TABLES
VALUE_TAB = GT_KUNNR
* FIELD_TAB =
* RETURN_TAB =
* DYNPFLD_MAPPING =
* EXCEPTIONS
* PARAMETER_ERROR = 1
* NO_VALUES_FOUND = 2
* OTHERS = 3
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
ENDFORM.
俩排搜索帮助
REPORT ZLS_01_1.
TYPES: shlp_descr_t TYPE shlp_descr .
DATA: BEGIN OF itab OCCURS 0 ,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
END OF itab.
DATA: return_tab TYPE ddshretval OCCURS 0 .
PARAMETERS: p_matnr LIKE itab-matnr,
p_maktx LIKE itab-maktx.
INITIALIZATION.
SELECT matnr maktx INTO TABLE itab FROM makt UP TO 20 ROWS
WHERE spras = '1'.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_matnr .
PERFORM f4.
FORM f4.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MATNR'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'P_MATNR'
value_org = 'S'
callback_program = sy-repid
callback_form = 'CB_FORM'
TABLES
value_tab = itab
return_tab = return_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
ENDFORM. "f4"
FORM cb_form TABLES record_tab STRUCTURE seahlpres
CHANGING shlp TYPE shlp_descr_t
callcontrol LIKE ddshf4ctrl.
DATA: interface LIKE LINE OF shlp-interface.
READ TABLE shlp-interface INTO interface INDEX 1.
"表示把搜索帮助中的第二列,放入P_MAKTX中去。
interface-shlpfield+4(1) = '2'. "注意点解析"
interface-valfield = 'P_MAKTX'.
APPEND interface TO shlp-interface.
ENDFORM.