Considering that your proc returns only one row with several columns (lets say 52 cols) you may create a wrapper proc defined with equal number of local variables to store these values and then have a select immediate after the proc call with selected columns (say 11 of 52).
Incase the original proc returns multiple rows, you either need to find the combination of input values to make it return only one row. If this can be achieved, the wrapper proc would execute the original proc in loop to make it return individual rows each time and hence the above solution would work.
If a combination of input values cannot be made so as to return a single row, the proc would have to be modified accordingly.
If all these fails, the best is to have the results saved in a temp table (could be a permanent temp table...you know what it is) and have control on it.
HTH