I am not sure whether you can run an OOALV in background.....as you would be calling a screen somewhere in your program using CALL SCREEN statement
You should be receiving DYNPRO error...as the screen cannot be called in background.
Try using REUSE_ALV_GRID_DISPLAY FM.