二维码

[fmalv] REFRESH_TABLE_DISPLAY刷新alv界面

Twilight发表于 2014-08-18 11:28Twilight 最后回复于 2014-08-18 11:28 [复制链接] 7342 0

方法REFRESH_TABLE_DISPLAY的参数说明:
IS_STABLE 刷新的稳定性,有2个参数,一个是行,一个是列.如果设置了相应的值,那么对应的行,或者列,在刷新的时候,将会保持稳定,就是滚动条保持不动.
I_SOFT_REFRESH 这个参数只是在异常情况下被使用,如果设置了这个参数,任何创建的合计,任何排序次序,任何为了显示数据而设置的过滤都将保持不变.这个是非常有意义的.例如:当然你没有修改数据内表里的数据而想刷新ALV,仅仅只是改变一下布局和字段目录.
PS:一定是alv映射的内表值被修改,刷新alv,alv界面才会显示修改结果

主要代码:
  1. DATA: lr_grid TYPE REF TO cl_gui_alv_grid.
  2. DATA: ls_stable TYPE lvc_s_stbl.
  3. ls_stable-row = 'X'.
  4. "LS_STABLE-COL = 'X'.

  5. CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'  "得到当前屏幕上的ALV的句柄
  6. IMPORTING
  7.    e_grid                           =
  8.           .

  9. CALL METHOD lr_grid->refresh_table_display  "更改后数据刷新
  10.   EXPORTING
  11.     is_stable      = ls_stable
  12. *    i_soft_refresh =
  13. *  EXCEPTIONS
  14. *    finished       = 1
  15. *    others         = 2
  16.         .
复制代码
回复

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表