alv 刷新_ALV Function 自动刷新

#6

使用道具

发表于

2008-10-6 16:38

FORM F_ALV_USER_COMMAND USING R_UCOMM

LIKE SY-UCOMM

RS_SELFIELD TYPE SLIS_SELFIELD.

DATA S_TEMP(100) TYPE C.

DATA L_TEMP LIKE LINE OF IT_PRINT_001.

DATA L_FID(30).

DATA L_LINE TYPE I.

G_SELECTED_FIELD_VALUE =  RS_SELFIELD-VALUE.

G_TABINDEX = RS_SELFIELD-TABINDEX.

READ TABLE IT_PRINT_001 INTO L_TEMP INDEX G_TABINDEX.

CASE R_UCOMM.

WHEN '&IC1'.  "NEED MODIFY

G_SELECTED_FIELD_VALUE =  RS_SELFIELD-VALUE.

G_TABINDEX = RS_SELFIELD-TABINDEX.

IF RS_SELFIELD-FIELDNAME = 'MATNR'.

PERFORM F_BDC_EXECUTE_001.

**

自动刷新添加的代码段

IT_PRINT_001-VIEWED = 'X'.

MODIFY IT_PRINT_001 TRANSPORTING VIEWED WHERE PLNUM = L_TEMP-PLNUM.

RS_SELFIELD-COL_STABLE = 'X'.

RS_SELFIELD-ROW_STABLE = 'X'. "

自动刷新之前记住光标所在的行和列的位置

RS_SELFIELD-REFRESH = 'X'.  "

自动刷新

MD04

MD04

X

(

IT_PRINT_001-VIEWED

=

'X'.

)

,便于用户区别哪些行被双击到

MD04

了,那么要使这个标识显示

出来,

必须对

ALV

数据进行刷新才行。

所以实现自动刷新,

以及刷新之后光标位置不变,

只需要以下三行;

RS_SELFIELD-COL_STABLE = 'X'.

RS_SELFIELD-ROW_STABLE = 'X'. "

自动刷新之前记住光标所在的行和列的位置

RS_SELFIELD-REFRESH = 'X'.  "

自动刷新

希望这次你能解决你的问题了,我想我说的已经够清楚了。

(另外,实现这个功能,我参考的是标准报表

QA33

)

DATA: lr_grid TYPE REF TO cl_gui_alv_grid.

DATA: LS_STABLE TYPE LVC_S_STBL.

LS_STABLE-ROW = 'X'.

"LS_STABLE-COL = 'X'.

CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'       "

得到当前屏幕上的

ALV

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值