If you make your parameters dependant on another parameter then you should be able to greythe others out.
if you make your @Year or @Dates dependent on @ReportingLevel they'll be greyed out until you pick a ReportingLevel.
If your @Reportingperiod isn't a query but a list of options you could make it a query by doing
Select 'Year' as ReportingPeriod
Union
Select 'Month
Where @ReportingPeriod = @ReportingPeriod
This will make the report wait until reportingperiod has been selected.