1.GUI状态按钮信息

2.user_command代码
FORM frm_user_command USING r_ucomm LIKE sy-ucomm"屏幕流
rs_selfield TYPE slis_selfield.
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
IMPORTING
e_grid = go_grid.
go_grid->check_changed_data( ).
CASE r_ucomm.
WHEN 'ZPDF'.
PERFORM frm_get_pdflist.
ENDCASE.
ENDFORM.
FORM frm_get_pdflist .
DATA: ls_object TYPE sibflporb.
DATA(lt_sel) = gt_out[].
DELETE lt_sel WHERE sel = ''.
READ TABLE gt_out WITH KEY sel = 'X'.
IF sy-subrc NE 0.
MESSAGE e001(00) WITH '请选择数据'.
ELSEIF lines( lt_sel ) > 1.
MESSAGE e001(00) WITH '一次只能选择一个检验批'.
ELSE.
ls_object-objtype = 'BUS2045'.
ls_object-instid = gt_out-prueflos.
ls_object-catid = 'BO'.
CALL FUNCTION 'GOS_ATTACHMENT_LIST_POPUP'
EXPORTING
is_object = ls_object
ip_mode = 'E'. " Display
ENDIF.
ENDFORM.
3.ALV代码
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
EXPORTING
i_callback_program = sy-repid
is_layout_lvc = gw_layout
it_fieldcat_lvc = gt_fieldcat
i_default = 'X'
i_save = 'A'
i_callback_user_command = 'FRM_USER_COMMAND'
i_callback_pf_status_set = 'SET_PF_STATUS'
TABLES
t_outtab = gt_out
EXCEPTIONS
program_error = 1
OTHERS = 2.
FORM set_pf_status USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'STATUS_001'.
ENDFORM.
4.效果

