cl_gui_cfw=>flush

   用法一:
     REFRESH_TABLE_DISPLAY虽然刷新的界面,但是SAP GUI并不是实时更新,而是将更新的结果放在缓存中,手动调用CL_GUI_CFW=>FLUSH才能触发SAP GUI更新界面,看到刷新的结果。
  CALL METHOD cl_gui_cfw=>flush
    EXCEPTIONS
      cntl_system_error 1
      cntl_error        2.
   用法二:

例如下面让用户选择文件夹的代码:

      CALL METHOD cl_gui_frontend_services=>directory_browse
        CHANGING selected_folder = folder.
      CALL METHOD cl_gui_cfw=>flush.

why should we call the flush method?

here is some notes about this mehtod, from http://blog.csdn.net/xyfchris/archive/2007/06/29/1671481.aspx

"In OO approach, calling a Control-method does not imply that the method is automatically executed at runtime. Initially, the system buffers methods in a queue, referred to as the Automation Queue, when they are called in the ABAP program. The execution sequence of the methods therefore remains unchanged. However, the methods are only executed if they are transferred to the frontend via Remote Function Call (RFC) using method FLUSH. This means that the Automation Queue is used to reduce the number of RFC calls required."

用法三:

在OO的ALV方法中,使程序重新走PBO

 

  CALL METHOD cl_gui_cfw=>set_new_ok_code
    EXPORTING
      new_code 'REFRESH'.

 

  CALL METHOD cl_gui_cfw=>flush.

 

posted @ 2014-01-16 12:53  小鱼儿游  阅读(2896)  评论(0编辑  收藏  举报