I would substring the date field and subtract from the year, and do a to_date on it (if you're in oracle). to_date(concat(to_char(to_number(substr(?p_date?,1,4)-1),'YYYY'),substr(?p_date?,5,4)),'YYYYMMDD')
Might be convoluted, but something like this worked for us a while back. We changed our fact table a bit to make it more eligant.