Having conditional result sets will be impossible to map results to. Do you sometimes have 1 results set, or 2 or 3? Hard to manage, and ultimately results in messy coding.
Having conditional result sets are a nightmare to handle. Imaging trying to join data against result set 2 if we have 3 result sets, but we must use result set 1 if we only get 2 result sets. Messy, and best avoided at all costs.
Therefore I would suggest changing the stored procedure to always return the maximum amount of results sets, even if those results are empty. That way you always get consistent output from the stored procedure.
Having conditional result sets are a nightmare to handle. Imaging trying to join data against result set 2 if we have 3 result sets, but we must use result set 1 if we only get 2 result sets. Messy, and best avoided at all costs.
Therefore I would suggest changing the stored procedure to always return the maximum amount of results sets, even if those results are empty. That way you always get consistent output from the stored procedure.