Je pense que la solution peut en théorie vous aider à augmenter les performances, mais cela dépend aussi de ce que fait réellement la fonction scalaire. Je pense que dans ce cas (je suppose que la date est formatée au dernier jour du trimestre) serait vraiment négligeable.
Vous voudrez peut-être lire cette page avec des solutions de contournement suggérées :
Et dans les solutions de contournement, il y a un commentaire qui
Il semble donc que oui, cela peut augmenter les performances.
Votre solution est correcte, mais je recommanderais d'envisager une amélioration du SQL pour utiliser ELSE à la place, cela me semble plus propre :
AND ReportTypeID = CASE WHEN (@X = 1) THEN 1
ELSE 4
END;