如何用新数据刷新ALV cl_salv_table

2020-09-05 10:18发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好,我有一个带有两个ALV的...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,我有一个带有两个ALV的程序,在第一个ALV中,当用户单击一个记录时,该程序在下面显示第二个ALV,但是当用户在第一个ALV的任何其他行上单击时,第二个ALV必须 显示新信息,也就是说,应使用新信息更新ALV2。

有人可以帮助我吗?

这是我的代码:

 METHOD on_double_click。

       cl_class-> get_data(
       出口
        i_vbeln = t_rang []
       输入
         e_data = t_alv2
     )。

     创建对象lo_alv_custom

       出口

         container_name ='CONT2'。

     创建对象lo_alv_splitter

       出口

         父母= lo_alv_custom

         行= 2

         列= 1。

     lo_alv_splitter-> set_row_height(id = 1 height = 100)。

     go_alv_cont2 = lo_alv_splitter-> get_container(row = 1 column = 1)。

     cl_salv_table => factory(导出r_container = go_alv_cont2
                             导入r_salv_table = go_alv_grid2
                             更改t_table = t_alv2)。

     cl_report => settings_alv2()。
   尝试。
     go_alv_grid2-> set_data(

       改变
         t_table = t_alv2 []

     )。

       捕获cx_salv_no_new_data_allowed。  "

     ENDTRY。
     go_alv_grid2-> get_columns()。
     go_alv_grid2-> refresh()。
     go_alv_grid2-> display()。
   终结法。