The way I do this is to add a field called Increment. I then use the Before Insert event to set the value for a hidden control on my form bound to that field to:
=Nz(DMax("[Increment]","table","[ReqDate] = #" & Me.txtReqDate & "#"),0)+1
As for the Reference number, this should NOT be stored...