TABLE CONTROL隐藏列和固定列的实现

、设置固定列
需求:为了方便对主要关心信息地查看,用户希望TABLE CONTROL左边的一列或者几列在屏幕上固定。针对用户这样子的需求, 我们首先会想到类似与屏幕编辑/可见等字段属性设置,但是此方法行不通。解决方法:通过设置Table Control自带的属性,定义最左边的某些列不可滚动。在Screen Layout中,双击Table Control的右上角,弹出“表控制”属性,即可设置。如下图所示:
TABLE CONTROL隐藏列和固定列的实现

二、隐藏列
需求:隐藏TABEL CONTROL的某一列或者多列,其实针对这样子的需求,我们最常想到的就是通过设置字段属性为ACTIVE或INVISIBLE,经过测试,发现,此方法无效。
解决方法:通过CODING修改tabctrl-cols下的某字段可见长度。
代码如下:
DATA: ls_col LIKE LINE OF ztc_500-cols.
LOOP AT ztc_500-cols INTO ls_col WHERE screen-name = ‘WA_ADD-KOSTL’.
IF l_hide IS INITIAL.
ls_col-vislength = 6.
ELSE.
ls_col-vislength = 0.
ENDIF.
MODIFY ztc_500-cols FROM ls_col.
ENDLOOP.
添加位置:如下图

TABLE CONTROL隐藏列和固定列的实现
双击如上图所示的,标记的MODULE,将代码添加,即可!