它主要是通过一个类CL_SALV_TABLE来实现的.系统里的demo为:SALV_DEMO_*,可以去查看
创建实例,使用里面的factory方法。
所以需要定义一个参考CL_SALV_TABLE的类型传出,用于后面对于这个实例的其他操作,具体代码如下。
REPORT ZSALV-01. *以前都是通过函数“REUSE_ALV_GRID_DISPLAY”来显示列表,这种方式是面向过程的 *现在有另外一种面向对象化的方式来显示列表,函数REUSE_ALV_GRID_DISPLAY可以做到的它也能够做到。 *它主要是通过一个类CL_SALV_TABLE来实现的. *下面让我们来实现最简单的ALV列表。 "1、取得数据 SELECT * INTO TABLE @DATA(LT_VBAK) FROM VBAK UP TO 20 ROWS. "2、调用类CL_SALV_TABLE的静态方法Factory()创建类的实例。 DATA: S_ALV TYPE REF TO CL_SALV_TABLE."定义参考类型 TRY. CL_SALV_TABLE=>FACTORY( IMPORTING R_SALV_TABLE = S_ALV CHANGING T_TABLE = LT_VBAK ). CATCH CX_SALV_MSG. ENDTRY. "3、取得实例之后再调用方法Display()显示列表 S_ALV->DISPLAY( ).
最后让我们看一下显示结果