quinta-feira, 17 de janeiro de 2019

Execução ALV (CL_GUI_ALV_GRID) em background

  A função REUSE_ALV_GRID_DISPLAY faz a listagem dos dados no spool sem problema, utilizando a classe CL_GUI_ALV_GRID, por causa do container, dá um DUMP.  Andei procurando e achei a solução, utilizando um outro objeto base para a criação do objeto ALV.

Solução abaixo.

==========================

DATAo_alv         TYPE REF TO cl_gui_alv_grid,
      o_cc_alv      TYPE REF TO cl_gui_custom_container,
      o_ctr_alv_job TYPE REF TO cl_gui_docking_container.


  IF sy-batch IS INITIAL.
    CREATE OBJECT o_cc_alv
      EXPORTING
        container_name 'CC_ALV'.

    CREATE OBJECT o_alv
      EXPORTING
        i_parent o_cc_alv.

  ELSE.
    CREATE OBJECT o_alv
      EXPORTING
        i_parent o_ctr_alv_job.

  ENDIF.


=========================================
Em vez do sy-batch tem um método que tambem determina se o alv está em job ou não.

IF cl_gui_alv_grid=>offline( ) IS INITIAL.

ENDIF.

Nenhum comentário:

Postar um comentário