Try this
CREATE procedure proc1
@orderstatus VARCHAR(15),
@orderdate DATETIME,
@createdate DATETIME
AS
IF @OrderDate is NULL and @Createdate is NULL
Begin
Select * from table1
where ordercreatedt >= DATEADD(Day, DATEDIFF(Day, 0, GetDate()-1), 0) AND
ordercreatedt < DATEADD(Day, DATEDIFF(Day, 0, GetDate()), 0)
and @orderstatus = case when @orderstatus = 'ALL' then 'ALL' Else orderstatus End
END
ELSE
BEGIN
Select * from table1
where @orderstatus = case when @orderstatus = 'ALL' then 'ALL' Else orderstatus End
and isnull(@orderdate,'') = case when isnull(@orderdate,'') = '' then '' else orderdate end
and isnull(@createdate,'') = case when isnull(@createdate,'') = '' then '' else convert(varchar(10),ordercreatedt,101) end
END