thanks Abhilash...you're absolutely correct i missed that xi piece.
in earlier versions use syntax like
({Orders.Order Date} >= {?DateStart} or {?DateStart}= date(1900,01,01))
and
({Orders.Order Date} <= {?DateEnd} or {?DateEnd}= date(2100,01,01))
where datestart has a default value of 1900,01,01
and dateend has a default value of 2100,01,01
this allows the end user to leave either datestart or dateend blank. for 2008 and later use the hasvalue method above.
-jamie