SAP 简单实现弹窗ALV显示内表数据示例
1.实现双击事件(本例中在SALV中实现,其他alv自行参照处理)
2.代码实现弹窗ALV显示内表数据
- 主要利用set_screen_popup方法实现SALV弹窗
FORM frm_double_click USING p_row
p_column.
DATA lo_alv TYPE REF TO cl_salv_table.
DATA: lo_functions TYPE REF TO cl_salv_functions_list.
DATA: lo_columns TYPE REF TO cl_salv_columns.
DATA: lo_display TYPE REF TO cl_salv_display_settings.
READ TABLE gt_data_i INTO DATA(wa_data_i) INDEX p_row.
IF sy-subrc = 0.
SELECT *
FROM @gt_data_h_tmp AS a
WHERE aufnr = @wa_data_i-aufnr
INTO TABLE @DATA(lt_popup_h).
TRY.
cl_salv_table=>factory(
IMPORTING
r_salv_table = lo_alv
CHANGING
t_table = lt_popup_h ).
CATCH cx_salv_msg.
ENDTRY.
lo_columns = lo_alv->get_columns( ). "获取对象
lo_columns->set_optimize( 'X' ). "设置行宽自适应
lo_functions = lo_alv->get_functions( ).
lo_functions->set_all( 'X' ).
lo_display = lo_alv->get_display_settings( ). "获取对象 "
lo_display->set_list_header( |工单:{ wa_data_i-aufnr } 抬头清单!| ). "设置GUI抬头文本
IF lo_alv IS BOUND.
lo_alv->set_screen_popup(
start_column = 10
end_column = 110
start_line = 4
end_line = 14 ).
lo_alv->display( ).
ENDIF.
ENDIF.
ENDFORM.
3.效果
post SAP-Garson
原文链接:https://blog.csdn.net/qq_30797051/article/details/123793975文章来自于网络,如果侵犯了您的权益,请联系站长删除!