Most of the customized report i created usually have different pattern in a single report such as the report have capability to show multiple type of result in the same sap report. The user interface usually are always represented with radio button as below.
Each choosen radio button will represent a diffrent type of result (different number of column). If you are design your code using Object Oriented ALV, tradisionally you need to have multiple internal table for each result, such as IT01,IT02, IT03,… and you nedd to call ALV method multiple times, depending on number of your internal table and definately in my own opinion it is not good for programming implementation if we always repeating same method for the same purpose !