I looked at your report. Since I dont have the database to run against I cannot give a you a solution that I know will work. I did create the following formula against the sample database for CR.
This formula works to compare a datebase field to value (this could be another database field and then then return a year. This again could be value parsed from another datafield source. If the comparision fails it then returns the year from the current system date.
If I have understood your problem correctly, the formula should give you the path to a possible solution. On the surface I looked at your formula and I cannot tell you why it did not work. There is a space between the Year and CurrentDate field. Perhaps that is the problem. Anyway I hope what follows will help your sort it out. Let us know either way.
-------------------------------------------------------------
If Year({Command.Statement Date}) = 2003 then "2003"
else
ToText(Year(CurrentDate),0,"")
---------------------------------------------
Regards,
John W.