2017-06-12 73 views
0

我有一个ALV网格,我需要基于输入和所选按钮在四个不同视图之间切换的默认显示。输入之间的差异是特定于我的业务的某种数据类型。有两个不同的按钮,一个显示所有列,一个只显示一些列。硬代码默认ALV布局

我知道可以在ALV页面上设置默认显示。我已经这样做了,但是这会保存我的数据类型之一的显示,然后当输入其他数据类型时,ALV网格仍然具有其他布局。

有没有办法硬编码默认使用?我正在准备一个演出中的ALV网格的列,我希望能够在该演出中选择一个默认显示,但我不知道如何去做,或者甚至可能。

谢谢,

+1

是的,有。你使用哪种ALV方法?基于FM还是基于Class?如果基于类,哪个类? –

+0

基于类。我最终只给了两个不同的数据类型相同的名称,然后循环遍历表并根据需要替换它们。感谢评论,但! –

回答

1

使用布局关键信息(SALV_S_LAYOUT_KEYCL_SALV_TABLE,通过布局对象获得的 - 类似的东西存在CL_GUI_ALV_GRID,搜索DISVARIANT),以根据所选择的按钮指定不同的手柄。这将允许用户为列表类型保存不同的布局变体并指定不同的默认布局。