Hola... la solución que has obtenido es un tanto engañosa, no siempre te va a funciionar
Después de probar creo que tengo lo que necesitas, aunque es un poco liosa
SELECT FechaAlta,
convert(datetime, convert(varchar(4), Year(Getdate())) + '-' +
convert(varchar(2), Month(FechaAlta)) + '-' +
convert(varchar(2), Day(FechaAlta)))AS FF
FROM Empleados
WHERE
convert(datetime, convert(varchar(4), Year(Getdate())) + '-' +
convert(varchar(2), Month(FechaAlta)) + '-' +
convert(varchar(2), Day(FechaAlta))) BETWEEN
(case WHEN datepart(dw, GetDate()) = 1 THEN
GetDate() - 6
ELSE
GetDate() - (datepart(dw, GetDate()) - 2) END) AND
(case WHEN datepart(dw, GetDate()) = 1 THEN
GetDate()
ELSE
GetDate() + (8 - datepart(dw, GetDate())) END)
JEJE
En este caso, lo que hago es saber cuando un empleado cumple años en la empresa, cambia FecAlta por FechaNacimiento y listo.
El motivo de que sea tan enrevesada, es porque el puñetero SQL se empeña en tener como día uno de la semana el domingo, en fin... supongo que se puede mejorar, (seguro que es mejorable)
Un saludo y espero que te sirva de ayuda