Myslím, že řešení vám teoreticky může pomoci zvýšit výkon, ale také záleží na tom, co skalární funkce skutečně dělá. Myslím, že v tomto případě (můj odhad je formátování data na poslední den čtvrtletí) by to bylo opravdu zanedbatelné.
Možná si budete chtít přečíst tuto stránku s navrhovanými řešeními:
A v části Řešení je komentář, že
Zdá se tedy, že ano, může to zvýšit výkon.
Vaše řešení je správné, ale doporučil bych zvážit vylepšení SQL, aby místo toho používal ELSE, zdá se mi to čistší:
AND ReportTypeID = CASE WHEN (@X = 1) THEN 1
ELSE 4
END;