1. 界面
- 选择屏幕
- 导入界面
2. 实现
- 代码
TABLES sscrfields. *----------------------------------------------------------------------* * CLASS lcl_events DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_events DEFINITION. PUBLIC SECTION. METHODS: on_user_command "定义设置SALV on_user_command属性的方法 FOR EVENT added_function OF cl_salv_events_table IMPORTING e_salv_function. ENDCLASS. "lcl_events DEFINITION *----------------------------------------------------------------------* * CLASS lcl_events IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS lcl_events IMPLEMENTATION. METHOD on_user_command. PERFORM frm_on_user_command USING e_salv_function. ENDMETHOD. "on_user_command ENDCLASS. "lcl_events IMPLEMENTATION TYPES: BEGIN OF ty_out, icon TYPE char4, text TYPE char30, matnr TYPE mara-matnr, werks TYPE t001w-werks, END OF ty_out. DATA: go_alv TYPE REF TO cl_salv_table. DATA: gt_out TYPE TABLE OF ty_out, wa_out TYPE ty_out. TYPE-POOLS: truxs. TABLES: ztmm_sfzs. DATA: gs_text TYPE smp_dyntxt. SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE l_title1. PARAMETERS: p_import TYPE c RADIOBUTTON GROUP r1 USER-COMMAND uc01 DEFAULT'X', p_delete TYPE c RADIOBUTTON GROUP r1, p_query TYPE c RADIOBUTTON GROUP r1. SELECTION-SCREEN END OF BLOCK b1. SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE l_title2. PARAMETERS : p_file TYPE string OBLIGATORY DEFAULT'C:\TEMPLATE.XLSX' MODIF ID m1. SELECT-OPTIONS: s_matnr FOR ztmm_sfzs-matnr MODIF ID m2, s_werks FOR ztmm_sfzs-werks MODIF ID m2. SELECTION-SCREEN END OF BLOCK b2. SELECTION-SCREEN FUNCTION KEY 1. SELECTION-SCREEN FUNCTION KEY 2. INITIALIZATION. PERFORM frm_init_funckey. l_title1 = '选择功能'. l_title2 = '选择条件'. AT SELECTION-SCREEN OUTPUT. CASE 'X'. WHEN p_import OR p_delete. IF p_import = 'X'. gs_text-icon_id = icon_execute_object. gs_text-text = '执行新增数据'. gs_text-icon_text = '执行新增'. ELSE. gs_text-icon_id = icon_execute_object. gs_text-text = '执行删除数据'. gs_text-icon_text = '执行删除'. ENDIF. LOOP AT SCREEN. IF screen-group1 = 'M2'. screen-active = 0. MODIFY SCREEN. ENDIF. ENDLOOP. WHEN p_query. LOOP AT SCREEN. IF screen-group1 = 'M1'. screen-active = 0. MODIFY SCREEN. ENDIF. ENDLOOP. WHEN OTHERS. ENDCASE. AT SELECTION-SCREEN. IF sscrfields-ucomm = 'FC01'. PERFORM frm_download_template. ELSEIF sscrfields-ucomm = 'FC02'. PERFORM frm_skip_old_tcode. ENDIF. AT SELECTION-SCREEN ON VALUE-REQUEST FOR