Hola, los ALV estan diseniados para procesarlos en dialogo y no en fondo ... si tienes rutinas en el ALV trata de crearte una rutina aparte cuando
IF sy-batch = 'X'. " Proceso de fondo
PERFORM rutinas ....
ELSE.
Mostrar ALV
ENDIF.
Es lo unico que podrias hacer ... espero te ayude