用 CL_SALV_TABLE 在一个屏幕上显示两个表

问题描述

我想问一下,是否可以使用类 CL_SALV_TABLE一个屏幕上显示两个相关的表(例如,按采购订单编号)。

如果不是,还有什么其他课程可以工作?

先谢谢你!

解决方法

正如桑德拉所说的那样,这是不可能的。您需要更改方法:设置拆分容器并在其中显示您的表格/网格。此类显示的模板步骤如下:

* creating splitter
DATA(split) = NEW cl_gui_splitter_container( parent = cl_gui_container=>screen0
                                             no_autodef_progid_dynnr = abap_true
                                             rows = 1
                                             columns = 2 ).

* marking container
DATA(spl_left) = split->get_container( row = 1 column = 1 ).
DATA(spl_right) = split->get_container( row = 1 column = 2 ).

* grid 1
cl_salv_table=>factory( EXPORTING
                            r_container    = spl_right
                          IMPORTING
                            r_salv_table   = o_salv
                          CHANGING
                            t_table        = it_salv_itab1 ).

* grid 2
cl_salv_table=>factory( EXPORTING
                            r_container    = spl_left
                          IMPORTING
                            r_salv_table   = o_salv
                          CHANGING
                            t_table        = it_salv_itab2 ).

查看此页面以获取全面示例 https://codezentrale.de/abap-gui-simple-tree-und-salv-grid-in-split-container-ohne-dynpro-anzeigen-eventhandling/