0

是否可以自动对 ALV 中未排序字段上的行进行分组?例如,假设我有以下输出:

1   T_PM1   0271    6025984     1271    602721
1   T_PM1   0271    6025984     1765    602721
1   T_PM1   0271    6025984     764     602721
1   T_PM1   0271    6025984     1242    602721
1   T_PM1   0271    6025984     1243    602721
1   T_PM1   0271    6025984     484     602721

假设我现在对前两列和第 5 列进行排序。前两列将分组1T_PM1而第五列将被排序。但是,第三、第四和第六列都包含从前两列派生的数据,因此它们是相同的。我现在应该如何强制对这些字段进行分组?(请注意,我正在使用创建 ALV 的 OO 方法。)

显而易见的解决方案是也对这些列进行排序,但是虽然我无法立即想到这会导致排序错误的情况,但我担心这会通过插入无用的排序而降低我的代码的可读性,并且这些排序会引入通过要求对每个附加列的数据进行额外的单次传递来验证它是否已经排序,从而产生不必要的开销。

4

1 回答 1

2

据我所知,不可能将 ALV 网格中的值分组到未排序的列中。请注意,排序将由 ALV 网格执行,因此SORT完全没有必要将列添加到语句中 - 事实上,不需要整个SORT语句。

用于对表进行排序的列数通常对总排序时间的影响很小 - 大多数情况下,您不必担心这一点。

于 2013-12-30T17:00:29.960 回答