Created by Jerry Wang, last modified on Jun 23, 2014
以后台方式运行report BCALV_GRID_DEMO:
该background job运行会失败:
原因如下:
将代码里使用custom container的地方全部替换成docking container,即可解决此问题:
PARAMETERS: d TYPE i NO-DISPLAY.
DATA: ok_code LIKE sy-ucomm,
gt_sflight TYPE TABLE OF sflight,
g_container TYPE scrfname VALUE 'BCALV_GRID_DEMO_0100_CONT1',
grid1 TYPE REF TO cl_gui_alv_grid,
g_custom_container TYPE REF TO cl_gui_custom_container,
g_doc TYPE REF TO cl_gui_docking_container.
AT SELECTION-SCREEN OUTPUT.
SELECT * FROM sflight INTO TABLE gt_sflight.
CREATE OBJECT g_doc EXPORTING ratio = 100 parent = cl_gui_container=>screen0.
CREATE OBJECT grid1
EXPORTING
i_parent = g_doc.
CALL METHOD grid1->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT'
CHANGING
it_outtab = gt_sflight.
替换之后ALV grid即使在后台也能够成功render: