*&------------------------------------------------ * ---------------------
*レポートZ_SALAH_COL_LISTBOX_HELP&
*&---------------------- ----------------------------------------------- *
*&
*&------------------------------------------------ * ---------------------
REPORT Z_SALAH_COL_LISTBOX_HELP 。
************************************************************ *********************************************
* REPORTはDESCRIBE:ALVを列のドロップダウンリストやヘルプを検索
* DEVELOPER:サラは
* DEVELOP DATE:20191014
* MODIFYのDATE:
* FUNCTION SPEC:
* USERのKEY:
*********************** ***********************************************
TYPE-POOLS :SLIS 。
TYPES :BEGIN TYP_01 OF、
FIELD01 TYPE CHAR18 、
FIELD02 TYPE CHAR20 、
DD_HANDLE TYPE INT4 、 「ÓÃÓÚ¿ØÖÆÏÂÀÁбí±êʶ
END TYP_01 OF 。
DATA GT_01 TYPE STANDARD TABLE TYP_01 OF 。
DATA GS_01 TYPE TYP_01 。
DATA IT_FIELDCAT TYPE LVC_T_FCAT 。
DATA IS_FIELDCAT TYPE LVC_S_FCAT 。
DATA IS_LAYOUT TYPE LVC_S_LAYO 。
データIS_GRID_SET TYPE LVC_S_GLAY 。
DATA :GT_DDVAL TYPE LVC_T_DROP、
GS_DDVAL TYPE LVC_S_DROP 。
DATA :GT_EVENTS TYPE SLIS_T_EVENT 、
GS_EVENT LIKE LINE GT_EVENTS OF 。
GS_01 -FIELD01 = '' 。
GS_01 -FIELD02 = '' 。
APPEND GS_01 TO GT_01 。
GS_01 -FIELD01 = '' 。
GS_01 -FIELD02 = '' 。
APPEND GS_01 TO GT_01 。
FRM_LISTBOX_DATAを行います。
IS_FIELDCAT -FIELDNAME = 'FIELD01' 。
IS_FIELDCAT - EDIT = 'X' 。
IS_FIELDCAT -REF_TABLE = 'MAKT' 。「ʹÓòο¼±íºÍ²Î¿¼×Ö¶ÎÊμÏÖÁÐËÑË÷°IOU
IS_FIELDCAT -REF_FIELD = 'MATNR' 。
IS_FIELDCAT -SCRTEXT_L = 'HELPÊý¾Ý' 。
APPEND IS_FIELDCAT TO IT_FIELDCAT 。
CLEAR IS_FIELDCAT 。
IS_FIELDCAT -FIELDNAME = 'FIELD02' 。
IS_FIELDCAT - EDIT = 'X' 。
IS_FIELDCAT -DRDN_FIELD = 'DD_HANDLE' 。
IS_FIELDCAT -SCRTEXT_L = 'LISTBOXÊý¾Ý' 。
APPEND IS_FIELDCAT TO IT_FIELDCAT 。
CLEAR IS_FIELDCAT 。
IS_GRID_SET -EDT_CLL_CB = 'X' 。
IS_LAYOUT -CWIDTH_OPT = 'X' 。
************************************************** ********************
*ÏÂÀ¿òÉèÖÃ
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
* EXPORTING
* I_LIST_TYPE = 0
IMPORTINGの
ET_EVENTS = GT_EVENTS
*例外を
* LIST_TYPE_WRONG = 1
* OTHERS = 2
。
IF SY -SUBRC <> 0 。
*ここでのハンドリングに適したエラーを実装
ENDIFを。
LOOP AT GT_EVENTS INTO GS_EVENT 。
IF GS_EVENT -NAME = 'CALLER_EXIT' 。
GS_EVENT - FORM = 'FRM_LISTBOX' 。
MODIFYのGT_EVENTS GS_EVENT FROM INDEX SY -TABIX 。
ENDIF 。
ENDLOOP 。
CALLの FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
輸出し
* I_INTERFACE_CHECK = ''
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
I_CALLBACK_PROGRAM = SY -REPID
"i_callback_pf_status_set = 'FRM_PF_STATUS'
" i_callback_user_command = 'FRM_USERCOMM'
* I_CALLBACK_TOP_OF_PAGE = ''
* I_CALLBACK_HTML_TOP_OF_PAGE = ''
* I_CALLBACK_HTML_END_OF_LIST = ''
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ''
* I_GRID_TITLE =
I_GRID_SETTINGS = IS_GRID_SET
IS_LAYOUT_LVC = IS_LAYOUT
IT_FIELDCAT_LVC = IT_FIELDCAT
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS_LVC =
* IT_SORT_LVC =
* IT_FILTER_LVC =
* IT_HYPERLINK =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
"I_SAVE = ''
* IS_VARIANT =
IT_EVENTS = GT_EVENTS
* IT_EVENT_EXIT =
* IS_PRINT_LVC =
* IS_REPREP_ID_LVC =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_HTML_HEIGHT_TOP =
* I_HTML_HEIGHT_END =
* IT_ALV_GRAPHICS =
* IT_EXCEPT_QINFO_LVC =
* IR_SALV_FULLSCREEN_ADAPTER =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = GT_01
*例外
* PROGRAM_ERROR = 1
* OTHERS = 2
。
IF SY -SUBRC <> 0