It has been weeks and.. probably months having many attempts to solve the page break in an ALV report. We had tried using REUSE_ALV_GRID_DISPLAY_LVC and returning to use REUSE_ALV_GRID_DISPLAY but both still couldn't force a page break while printing invoices.
To make a page break, just set grpchgedit = 'x'. This is will set page break to it.
Solution: Then, the moment came when we found out that we need to refresh one parameter from the ALV module. That is the i_buffer_active. This i_buffer_active will store all saved layouts into the SAP system. Therefore, everytime when the user invokes an ALV report the i_buffer_active will retrieve all saved layouts. (SAP allows shared memory on all things created and saved until it is dispose).
What we did was to write an application to refresh the i_buffer_active. This is will clear out all the old layouts. Therefore, whenever you make changes to your ALV program related to layout it would be advisable to clear the i_buffer_active so you can test your new changes.
sky is not the limit...