1. 变量定义
TABLES: sscrfields.
2. 选择屏幕
"增加选择屏幕按钮: 审核功能配置表维护
SELECTION-SCREEN FUNCTION KEY 1. "审核功能配置表维护
3. 屏幕事件
INITIALIZATION.
PERFORM FRM_BUTTON.
AT SELECTION-SCREEN.
PERFORM FRM_BUTTON_COMMAND.
4. FORM例程
*&---------------------------------------------------------------------*
*& Form FRM_BUTTON
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM frm_button .
DATA: functxt TYPE smp_dyntxt.
CLEAR functxt.
functxt-icon_id = icon_table_settings."icon_view_form
functxt-icon_text = '审核功能配置表维护'.
sscrfields-functxt_01 = functxt.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_BUTTON_COMMAND
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM frm_button_command .
DATA: ls_zfit_004a TYPE zfit_004a.
CASE sscrfields-ucomm.
WHEN 'FC01'. "审核功能配置表维护
SELECT SINGLE * INTO ls_zfit_004a
FROM zfit_004a
WHERE bname = sy-uname.
IF sy-subrc <> 0.
MESSAGE '您没有权限维护,请联系管理员!' TYPE 'E'.
ENDIF.
CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
EXPORTING
action = 'S'
* CORR_NUMBER = ' '
* GENERATE_MAINT_TOOL_IF_MISSING = ' '
* SHOW_SELECTION_POPUP = ' '
view_name = 'ZFIT_004'
* NO_WARNING_FOR_CLIENTINDEP = ' '
* RFC_DESTINATION_FOR_UPGRADE = ' '
* CLIENT_FOR_UPGRADE = ' '
* VARIANT_FOR_SELECTION = ' '
* COMPLEX_SELCONDS_USED = ' '
* CHECK_DDIC_MAINFLAG = ' '
* SUPPRESS_WA_POPUP = ' '
* TABLES
* DBA_SELLIST =
* EXCL_CUA_FUNCT =
EXCEPTIONS
CLIENT_REFERENCE = 1
FOREIGN_LOCK = 2
INVALID_ACTION = 3
NO_CLIENTINDEPENDENT_AUTH = 4
NO_DATABASE_FUNCTION = 5
NO_EDITOR_FUNCTION = 6
NO_SHOW_AUTH = 7
NO_TVDIR_ENTRY = 8
NO_UPD_AUTH = 9
ONLY_SHOW_ALLOWED = 10
SYSTEM_FAILURE = 11
UNKNOWN_FIELD_IN_DBA_SELLIST = 12
VIEW_NOT_FOUND = 13
MAINTENANCE_PROHIBITED = 14
OTHERS = 15
.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDFORM.
实现效果: