The reason for this error is that the GUI container relies on the presence of the GUI because it is running in the background, no GUI, and therefore control error.
You can bypass this by doing some coding.
*ALV GridDATA: R_gridTYPE REF toCl_gui_alv_grid.DATA: R_controlTYPE REF toCl_gui_custom_container.DATA: G_dockTYPE REF toCl_gui_docking_container.MODULEstatus_0100OUTPUT. SET Pf-status 'LISTOUT1'. SET titlebar 'LIST1'.IFR_control is INITIAL.*Check whether the program was run in batch or foreground (judging if it is running in the background) IFCl_gui_alv_grid=>offline () is INITIAL.*Run in foreground CREATE OBJECTR_controlExportingContainer_name ='container_1'. CREATE OBJECTR_gridExportingI_parent =R_control. ELSE.*Run in Background CREATE OBJECTR_gridExportingI_parent =G_dock. ENDIF.*Structure zba_mara1 is defined in DDIC as Linetype Pager METHODR_grid->Set_table_for_first_displayExportingI_structure_name='MARA' changingIt_outtab=ITAB. ENDIF.Endmodule."status_0100 OUTPUT
OO ALV Background Run-time error: Control framework:fatal Error-gui cannot be reached