FavoriteLoading
0

SALV教程18-读取其他SALV的显示结果

SALV有个神奇的功能,就是submit其他SALV程序后能直接取得显示的结果。通常情况下,可以将submit的SALV显示结果发送到内存中(SUBMIT .. EXPORTING LIST TO MEMORY. ),然后通过函数LIST_FROM_MEMORY读取,通过WRITE_LIST写入,这么做虽说也能得到其他SALV的程序运行结果,但是比较繁琐。

下面结果通过类CL_SALV_BS_RUNTIME_INFO来实现的步骤:

1,将Submit的salv设置为不显示模式

2,submit SALV程序

3,调用cl_salv_bs_runtime_info=>get_data_ref()取得结果

完整代码:

submit的salv_demo_table_simple是SAP系统内置的一个SALV demo程序,运行后显示10条数据,如下:

2016-09-29_13-27-17

Z_SALV_20运行debug,salv_demo_table_simple运行后显示的数据被保存到表<GIT_OUTTAB>中。

2016-09-29_13-30-02

通过这种方法也可以得到某些标准程序ALV的显示结果,很方便,比如MB5B(对应程序RM07MLBD)的ALV显示结果。

以上。