Я бы лучше написал этот код:
declare @cur_year datetime
SELECT @cur_year = convert(datetime, convert(varchar, @cyear) + '/01'+'/01', 111)
update #report_tmp set remark = @note1
where term_date != '' and term_date < @cur_year
Здесь вы не полагаетесь на текущие настройки локали при неявном преобразовании varchar в date или datetime (будет работать с обоими).