1、需新建屏幕1001 并画container:'CONT1'
2、需新建屏幕1002 并画container:'CONT2'
3、定义屏幕1001、1002的ok_code和逻辑流
4、定义工具栏
程序代码:
-
TABLES t001w.
-
-
TYPES:BEGIN OF typ_t001w ,
-
werks TYPE t001w-werks,
-
name1 TYPE t001w-name1,
-
werks2 TYPE t001w-werks,
-
rowcolor TYPE char10,
-
zcheckbox TYPE c, "LAYOUT-CHECBOX = 'ZCHECKBOX'.
-
* zflag TYPE c, "LAYOUT-BOX_FNAME = 'ZFLAG'.
-
zicon TYPE char10, "LAYOUT-ICON = 'ZICON' 图标需要显示的
-
END OF typ_t001w.
-
-
TYPES:BEGIN OF typ_smf ,
-
werks TYPE t001w-werks,
-
name1 TYPE t001w-name1,
-
END OF typ_smf.
-
-
DATA:i_t001w TYPE TABLE OF typ_t001w,"""""第一次ALV内表
-
i_detail TYPE TABLE OF typ_smf, """""单击ALV内表列ZICON显示的明细ALV内表
-
i_smf TYPE TABLE OF typ_smf.""""SF内表
-
-
DATA:fieldcat TYPE lvc_t_fcat,
-
grid TYPE REF TO cl_gui_alv_grid, "alv控件名
-
grid2 TYPE REF TO cl_gui_alv_grid, "alv控件名
-
g_container TYPE scrfname VALUE 'CONT1',"重新定义本地容器对象名
-
g_container2 TYPE scrfname VALUE 'CONT2',"重新定义本地容器对象名
-
is_layout TYPE lvc_s_layo,
-
ps_layout TYPE lvc_s_layo,
-
g_custom_container TYPE REF TO cl_gui_custom_container,
-
g_custom_container2 TYPE REF TO cl_gui_custom_container.
-
-
DATA: ui_functions TYPE ui_functions. "隐藏按钮的内表
-
*********ALV上事件捕捉类
-
DATA:gs_toolbar TYPE stb_button. "按钮
-
CLASS alv_event_receiver DEFINITION DEFERRED. "声明类对象
-
*----------------------------------------------------------------------*
-
* CLASS alv_event_receiver DEFINITION
-
*----------------------------------------------------------------------*
-
*
-
*----------------------------------------------------------------------*
-
CLASS alv_event_receiver DEFINITION. "声明类成员可见性
-
PUBLIC SECTION. "定义相关类成员可以被程序中的所有对象调用
-
CLASS-METHODS: "静态方法
-
handle_toolbar "初始化工具栏对象事件,如增加按钮并设定其属性
-
FOR EVENT toolbar OF cl_gui_alv_grid
-
IMPORTING e_object e_interactive,
-
-
handle_menu_button "用于在下拉菜单中增加选项
-
FOR EVENT menu_button OF cl_gui_alv_grid
-
IMPORTING e_object e_ucomm,
-
-
handle_user_command "工具栏中的按钮的单击事件
-
FOR EVENT user_command OF cl_gui_alv_grid
-
IMPORTING e_ucomm,
-
-
handle_hotspot_click
-
FOR EVENT hotspot_click OF cl_gui_alv_grid "屏幕中的单击事件,可以具体到某行某列,需要设置热点
-
IMPORTING e_row_id e_column_id es_row_no,
-
-
handle_double_click
-
FOR EVENT double_click OF cl_gui_alv_grid "屏幕中的双击事件,可以具体到某行某列,即使设置热点也必须双击
-
IMPORTING e_row e_column es_row_no.
-
ENDCLASS. "alv_event_receiver DEFINITION
-
*&---------------------------------------------------------------------*
-
*& Class (Implementation) alv_event_receiver
-
*&---------------------------------------------------------------------*
-
* Text
-
*----------------------------------------------------------------------*
-
CLASS alv_event_receiver IMPLEMENTATION. "实现类方法
-
METHOD handle_toolbar.
-
gs_toolbar-function = 'B_SUM'. "为按钮分配功能码
-
gs_toolbar-icon = icon_display. "为按钮分配图标
-
gs_toolbar-text = '总行数'. "为按钮分配文本
-
gs_toolbar-butn_type = '0'. "定义按钮类型,不填时默认为0
-
APPEND gs_toolbar TO e_object->mt_toolbar. "添加按钮到工具栏
-
-
gs_toolbar-function = 'B_PRINT'. "为按钮分配功能码
-
gs_toolbar-icon = icon_import. "为按钮分配图标
-
gs_toolbar-text = '转储订单打印'. "为按钮分配文本
-
gs_toolbar-checked = 'X'.
-
gs_toolbar-butn_type = '0'. "定义按钮类型,不填时默认为0
-
APPEND gs_toolbar TO e_object->mt_toolbar. "添加按钮到工具栏
-
-
gs_toolbar-function = 'B_LIST'. "为按钮分配功能码
-
gs_toolbar-quickinfo = '自定义下拉菜单'.
-
gs_toolbar-icon = icon_biw_report_view. "为按钮分配图标
-
gs_toolbar-text = '下拉菜单'. "为按钮分配文本
-
gs_toolbar-butn_type = '1'. "定义按钮类型
-
APPEND gs_toolbar TO e_object->mt_toolbar. "添加按钮到工具栏
-
-
gs_toolbar-function = 'B_EDIT'. "为按钮分配功能码
-
gs_toolbar-icon = icon_change. "为按钮分配图标
-
gs_toolbar-text = '切换编辑状态'. "为按钮分配文本
-
gs_toolbar-checked = 'X'.
-
gs_toolbar-butn_type = '0'. "定义按钮类型,不填时默认为0
-
APPEND gs_toolbar TO e_object->mt_toolbar. "添加按钮到工具栏
-
ENDMETHOD. "handle_toolbar
-
METHOD handle_menu_button.
-
IF e_ucomm = 'B_LIST'.
-
CALL METHOD e_object->add_function
-
EXPORTING
-
icon = icon_display
-
fcode = 'B_SUM'
-
text = '显示ALV总数'.
-
ENDIF.
-
ENDMETHOD. "handle_menu_button
-
METHOD handle_user_command.
-
DATA sum TYPE i.
-
DATA text TYPE string.
-
DATA: lwa_t001w LIKE LINE OF i_t001w.
-
DATA: lwa_smf LIKE LINE OF i_smf.
-
-
CASE e_ucomm.
-
WHEN 'B_SUM'.
-
DESCRIBE TABLE i_t001w[] LINES sum.
-
text = sum.
-
CONCATENATE '当前表格中数据的总行数:' text INTO text.
-
MESSAGE text TYPE 'I'. "为何消息类型为 E 时运行时显示A类型,异常终止到初始界面
-
WHEN 'B_PRINT'.
-
LOOP AT i_t001w INTO lwa_t001w WHERE zcheckbox = 'X'.
-
lwa_smf-werks = lwa_t001w-werks.
-
lwa_smf-name1 = lwa_t001w-name1.
-
APPEND lwa_smf TO i_smf.
-
CLEAR :lwa_t001w,lwa_smf.
-
ENDLOOP.
-
IF i_smf[] IS INITIAL.
-
MESSAGE '请至少选择一行数据区打印!' TYPE 'E'. "E类型消息会转化为A类型,很蛋疼,求破!
-
ELSE.
-
PERFORM frm_print_data. "这个没具体写。
-
ENDIF.
-
WHEN 'B_EDIT'.
-
IF grid->is_ready_for_input( ) EQ 0.
-
CALL METHOD grid->set_ready_for_input
-
EXPORTING
-
i_ready_for_input = 1.
-
ELSE.
-
CALL METHOD grid->set_ready_for_input
-
EXPORTING
-
i_ready_for_input = 0.
-
ENDIF.
-
WHEN OTHERS.
-
ENDCASE.
-
ENDMETHOD. "handle_user_command
-
"ALV内表展示处单击事件捕捉,需要设置热点对单击列字段
-
METHOD handle_hotspot_click.
-
DATA:lwa_t001w LIKE LINE OF i_t001w.
-
READ TABLE i_t001w INTO lwa_t001w INDEX es_row_no-row_id. "判断行号
-
CASE e_column_id-fieldname . "判断列名
-
WHEN 'NAME1'.
-
CALL TRANSACTION 'ME51N' AND SKIP FIRST SCREEN. "随便写的
-
WHEN 'ZICON'. "
-
SELECT werks
-
name1
-
INTO TABLE i_detail
-
FROM t001w
-
WHERE werks = lwa_t001w-werks2.
-
CLEAR lwa_t001w.
-
IF sy-subrc NE 0.
-
MESSAGE 'No result finding!' TYPE 'I'.
-
ELSE.
-
CALL SCREEN 1002.
-
ENDIF.
-
WHEN OTHERS.
-
ENDCASE.
-
* MESSAGE i001(00) WITH '当前行:' es_row_no-row_id ',航线代码:' ls_lt001w-werks.
-
ENDMETHOD. "handle_hotspot_click
-
"ALV内表展示处双击击事件捕捉,如果设置热点双击不起作用
-
METHOD handle_double_click.
-
DATA:lwa_t001w LIKE LINE OF i_t001w.
-
READ TABLE i_t001w INTO lwa_t001w INDEX es_row_no-row_id.
-
IF e_column-fieldname = 'WERKS'.
-
SET PARAMETER ID 'AUN' FIELD lwa_t001w-werks.
-
CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
-
ENDIF.
-
ENDMETHOD. "handle_double_click
-
-
ENDCLASS. "alv_event_receiver
-
START-OF-SELECTION.
-
CALL SCREEN 1001.
-
-
*&---------------------------------------------------------------------*
-
*& Module STATUS_1001 OUTPUT
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
MODULE status_1001 OUTPUT.
-
SET PF-STATUS 'T001'.
-
* SET TITLEBAR 'xxx'.
-
ENDMODULE. " STATUS_1001 OUTPUT
-
*&---------------------------------------------------------------------*
-
*& Module USER_COMMAND_1001 INPUT
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
MODULE user_command_1001 INPUT.
-
FIELD-SYMBOLS <field> TYPE typ_t001w .
-
DATA: i TYPE i VALUE 0.
-
DATA ok_code TYPE sy-ucomm.
-
ok_code = sy-ucomm.
-
CLEAR sy-ucomm.
-
-
CASE ok_code.
-
WHEN 'BACK'.
-
LEAVE TO SCREEN 0.
-
WHEN 'EDIT'.
-
IF grid->is_ready_for_input( ) EQ 0.
-
CALL METHOD grid->set_ready_for_input
-
EXPORTING
-
i_ready_for_input = 1.
-
ELSE.
-
CALL METHOD grid->set_ready_for_input
-
EXPORTING
-
i_ready_for_input = 0.
-
ENDIF.
-
WHEN 'EXECU'.
-
SELECT * FROM t001w
-
INTO CORRESPONDING FIELDS OF TABLE i_t001w.
-
LOOP AT i_t001w ASSIGNING <field> .
-
<field>-werks2 = <field>-werks.
-
<field>-zicon = '@[email protected]'. "图标
-
ENDLOOP.
-
-
IF g_custom_container IS INITIAL.
-
PERFORM exclude_tb_functions CHANGING ui_functions. "隐藏某些按钮
-
PERFORM frm_layout_set.
-
PERFORM frm_fieldcat_set.
-
PERFORM alv_show.
-
ELSE.
-
CALL METHOD grid->refresh_table_display. "刷新
-
ENDIF.
-
WHEN OTHERS.
-
ENDCASE.
-
ENDMODULE. " USER_COMMAND_1001 INPUT
-
*&---------------------------------------------------------------------*
-
*& Form ALV_SHOW
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* --> p1 text
-
* <-- p2 text
-
*----------------------------------------------------------------------*
-
FORM alv_show .
-
CREATE OBJECT g_custom_container "创建容器对象
-
EXPORTING container_name = g_container.
-
CREATE OBJECT grid "创建ALV对象
-
EXPORTING i_parent = g_custom_container.
-
CALL METHOD grid->register_edit_event "可编辑回传方法
-
EXPORTING
-
i_event_id = grid->mc_evt_modified.
-
CALL METHOD grid->set_table_for_first_display
-
EXPORTING
-
* I_BUFFER_ACTIVE =
-
* I_BYPASSING_BUFFER =
-
* I_CONSISTENCY_CHECK =
-
* I_STRUCTURE_NAME = 'T001W'
-
* IS_VARIANT =
-
i_save = 'X'
-
* I_DEFAULT = 'X'
-
is_layout = is_layout
-
* IS_PRINT =
-
* IT_SPECIAL_GROUPS =
-
it_toolbar_excluding = ui_functions[]
-
* IT_HYPERLINK =
-
* IT_ALV_GRAPHICS =
-
* IT_EXCEPT_QINFO =
-
* IR_SALV_ADAPTER =
-
CHANGING
-
it_outtab = i_t001w[]
-
it_fieldcatalog = fieldcat[].
-
* IT_SORT =
-
* IT_FILTER =
-
* EXCEPTIONS
-
* INVALID_PARAMETER_COMBINATION = 1
-
* PROGRAM_ERROR = 2
-
* TOO_MANY_LINES = 3
-
* others = 4
-
.
-
-
******注册ALV中引用的事件
-
SET HANDLER alv_event_receiver=>handle_toolbar
-
alv_event_receiver=>handle_menu_button
-
alv_event_receiver=>handle_user_command
-
alv_event_receiver=>handle_hotspot_click
-
alv_event_receiver=>handle_double_click
-
FOR ALL INSTANCES.
-
****调用方法**自定义工具对象
-
CALL METHOD grid->set_toolbar_interactive.
-
ENDFORM. " ALV_SHOW
-
-
*&---------------------------------------------------------------------*
-
*& Form exclude_tb_functions
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* -->PT_EXCLUDE text
-
*----------------------------------------------------------------------*
-
FORM exclude_tb_functions CHANGING pt_exclude TYPE ui_functions .
-
DATA ls_exclude TYPE ui_func.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_filter . "过滤器
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_current_variant . "布局更改
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_average ."平均值
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_mb_sum ."求和
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_mb_export . "导出
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_cut . "剪切
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_delete_row . "删除行
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_insert_row . "插入行
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_refresh . "刷新
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_find ."查找
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_sort_asc . "升序排列
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_sort_dsc . "降序排列
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_views . "视图
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_print ."打印
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_detail . "详细按钮
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_graph . "显示图形
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_info . "最终用户文档
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_append_row . "附加行
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_copy_row . "复制行
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_copy . "复制文本
-
APPEND ls_exclude TO pt_exclude.
-
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_undo . "撤消
-
APPEND ls_exclude TO pt_exclude.
-
ENDFORM . "exclude_tb_functions
-
*&---------------------------------------------------------------------*
-
*& Form FRM_LAYOUT_SET
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* --> p1 text
-
* <-- p2 text
-
*----------------------------------------------------------------------*
-
FORM frm_layout_set .
-
is_layout-zebra = 'X' .
-
is_layout-grid_title = '仓储转储订单跟踪及打印' .
-
is_layout-smalltitle = 'X' . "ALV 控制: 标题大小
-
is_layout-cwidth_opt = 'X' . "优化列宽
-
* is_layout-no_toolbar = 'X' . "隐藏按钮
-
is_layout-sel_mode = 'A' . "flag选择方式 A:行和列的选择,无法选择单元格 多行,多列 B
-
is_layout-info_fname = 'ROWCOLOR'.
-
ENDFORM. " FRM_LAYOUT_SET
-
*&---------------------------------------------------------------------*
-
*& Form FRM_FIELDCAT_SET
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* --> p1 text
-
* <-- p2 text
-
*----------------------------------------------------------------------*
-
FORM frm_fieldcat_set .
-
DATA ls_fcat TYPE lvc_s_fcat .
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'ZCHECKBOX' .
-
ls_fcat-coltext = '选择'.
-
* ls_fcat-emphasize = 'C601' ."列颜色控制
-
ls_fcat-checkbox = 'X'.
-
ls_fcat-edit = 'X'.
-
APPEND ls_fcat TO fieldcat .
-
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'WERKS' .
-
ls_fcat-inttype = 'C' .
-
ls_fcat-outputlen = '4' .
-
ls_fcat-coltext = '工厂'."Carrier ID.列标题
-
ls_fcat-seltext = 'AAA' ."ALV 控制: 对话功能的列标识符
-
ls_fcat-emphasize = 'C601' ."列颜色控制
-
* ls_fcat-hotspot = 'X'. “不能设置hotspot 否则double click事件无效
-
APPEND ls_fcat TO fieldcat .
-
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'NAME1' .
-
ls_fcat-ref_table = 'T001W' .
-
ls_fcat-ref_field = 'NAME1' .
-
ls_fcat-outputlen = '30' .
-
ls_fcat-coltext = '工厂名称' .
-
ls_fcat-hotspot = 'X'.
-
APPEND ls_fcat TO fieldcat .
-
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'WERKS2' .
-
ls_fcat-inttype = 'C' .
-
ls_fcat-outputlen = '4' .
-
ls_fcat-coltext = '工厂2号'."Carrier ID.列标题
-
ls_fcat-seltext = 'AAA' ."ALV 控制: 对话功能的列标识符
-
ls_fcat-emphasize = 'C601' ."列颜色控制
-
ls_fcat-edit = 'X'.
-
APPEND ls_fcat TO fieldcat .
-
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'ZICON' .
-
ls_fcat-coltext = '交货明细凭证'."Carrier ID.列标题
-
ls_fcat-seltext = 'AAA' ."ALV 控制: 对话功能的列标识符
-
ls_fcat-icon = 'X'.
-
ls_fcat-hotspot = 'X'.
-
APPEND ls_fcat TO fieldcat .
-
CLEAR ls_fcat .
-
ENDFORM. " FRM_FIELDCAT_SET
-
*&---------------------------------------------------------------------*
-
*& Form FRM_PRINT_DATA
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* --> p1 text
-
* <-- p2 text
-
*----------------------------------------------------------------------*
-
FORM frm_print_data .
-
-
ENDFORM. " FRM_PRINT_DATA
-
*&---------------------------------------------------------------------*
-
*& Module STATUS_1002 OUTPUT
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
MODULE status_1002 OUTPUT.
-
SET PF-STATUS 'T001'.
-
* SET TITLEBAR 'xxx'.
-
PERFORM frm_alv_show_detail.
-
ENDMODULE. " STATUS_1002 OUTPUT
-
*&---------------------------------------------------------------------*
-
*& Form FRM_ALV_SHOW_DETAIL
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
* --> p1 text
-
* <-- p2 text
-
*----------------------------------------------------------------------*
-
FORM frm_alv_show_detail .
-
DATA: ls_fcat TYPE lvc_s_fcat ,
-
fieldcat2 TYPE lvc_t_fcat.
-
ls_fcat-fieldname = 'WERKS' .
-
ls_fcat-coltext = '工厂'."Carrier ID.列标题
-
APPEND ls_fcat TO fieldcat2 .
-
CLEAR ls_fcat .
-
ls_fcat-fieldname = 'NAME1' .
-
ls_fcat-coltext = '工厂名称'.
-
APPEND ls_fcat TO fieldcat2 .
-
CLEAR ls_fcat .
-
-
ps_layout-zebra = 'X' .
-
ps_layout-grid_title = '交货明细凭证' .
-
ps_layout-smalltitle = 'X' . "ALV 控制: 标题大小
-
ps_layout-cwidth_opt = 'X' . "优化列宽
-
ps_layout-no_toolbar = 'X' . "隐藏按钮
-
* ps_layout-SEL_MODE = 'A' . "flag选择方式 A:行和列的选择,无法选择单元格 多行,多列 B
-
* ps_layout-info_fname = 'ROWCOLOR'.
-
-
IF g_custom_container2 IS INITIAL.
-
CREATE OBJECT g_custom_container2 "创建容器对象
-
EXPORTING container_name = g_container2.
-
CREATE OBJECT grid2 "创建ALV对象
-
EXPORTING i_parent = g_custom_container2.
-
ELSE.
-
CALL METHOD grid2->refresh_table_display. "刷新
-
ENDIF.
-
CALL METHOD grid2->set_table_for_first_display
-
EXPORTING
-
* I_BUFFER_ACTIVE =
-
* I_BYPASSING_BUFFER =
-
* I_CONSISTENCY_CHECK =
-
* I_STRUCTURE_NAME = 'T001W'
-
* IS_VARIANT =
-
i_save = 'X'
-
* I_DEFAULT = 'X'
-
is_layout = ps_layout
-
* IS_PRINT =
-
* IT_SPECIAL_GROUPS =
-
* IT_TOOLBAR_EXCLUDING =
-
* IT_HYPERLINK =
-
* IT_ALV_GRAPHICS =
-
* IT_EXCEPT_QINFO =
-
* IR_SALV_ADAPTER =
-
CHANGING
-
it_outtab = i_detail[]
-
it_fieldcatalog = fieldcat2[].
-
* IT_SORT =
-
* IT_FILTER =
-
* EXCEPTIONS
-
* INVALID_PARAMETER_COMBINATION = 1
-
* PROGRAM_ERROR = 2
-
* TOO_MANY_LINES = 3
-
* others = 4
-
.
-
ENDFORM. " FRM_ALV_SHOW_DETAIL
-
*&---------------------------------------------------------------------*
-
*& Module USER_COMMAND_1002 INPUT
-
*&---------------------------------------------------------------------*
-
* text
-
*----------------------------------------------------------------------*
-
MODULE user_command_1002 INPUT.
-
DATA ok_code2 TYPE sy-ucomm.
-
ok_code2 = sy-ucomm.
-
CLEAR sy-ucomm.
-
CASE ok_code2.
-
WHEN 'BACK'.
-
LEAVE TO SCREEN 0.
-
ENDCASE.
-
ENDMODULE. " USER_COMMAND_1002 INPUT
复制代码
程序执行效果:
点击“明细” 跳入第二屏,更多按钮响应效果自己体验
sap系统的ooalv的学习标准程序:
BCALV_EDIT_01
BCALV_EDIT_02
BCALV_EDIT_03
BCALV_EDIT_04
BCALV_EDIT_05 双击编辑单元格,更改编辑状态(ooalv 单元格控制)
BCALV_EDIT_06
BCALV_EDIT_07
BCALV_EDIT_08 |