FavoriteLoading
0

SALV教程17-布局列分组(Columns Specific Grouping)

布局列分组(Columns Specific Grouping)这个概念大家可能会很陌生,SALV的这个功能并不常用,它到底是什么呢,通常情况下ALV的布局(Layout)下是没有列分组的(可以把列分组理解成过滤器),如下:

2016-09-27_10-16-29

经过程序实现后,列分组如下:

2016-09-27_10-18-51

这个列分组就是为了方便大家在布局中选择字段轻而易举的找到所想要的字段,有些ALV显示的字段确实很多,而且字段名字也比较相似,尤其是FI/CO中的一些ALV报表。

这个布局列分组用到了类 CL_SALV_SPECIFIC_GROUPS,具体实现步骤如下:

1,调用cl_salv_specific_groups->add_specific_group()添加列分组名

2016-09-27_10-33-07

2,调用cl_salv_column_list->set_specific_group()将ALV中的字段加入到列分组下

2016-09-27_10-33-48

下面代码在布局中添加2个列分组GRP1和GRP2,然后向这两个分组下分别加入HSL开头和TSL开头的字段。

完整代码:

运行后可以看到布局中创建的列分组,如下:

2016-09-27_10-18-51

上面代码中用到了SALV的列隐藏功能,具体参照-->SALV教程10-列属性设定-隐藏列.

以上。