我有一份Crystal报告,其中有两个参数:{?EmailVerifyStatus}
和{?Company}
。我想要它,以便当两个参数为空时,报告将获得所有记录。
这是我目前的代码:
(if {?EmailVerifyStatus}='Y' THEN {PREH.udEmailVerify}='Y'
ELSE IF {?EmailVerifyStatus}='N' THEN {PREH.udEmailVerify}='N'
ELSE 1=1)
and
(if {?Company} <> '0' then not (IF "," & ToText({PREH.PRCo},0,'') & "," IN "," & {?Company} & "," THEN 0=1 ELSE 1=1) else 1=1 )
但是,它只返回带有'Y'值的记录。
答案 0 :(得分:1)
您必须检查参数是否使用hasvalue()
功能设置了值。然后你可以这样做:
(not(hasvalue({?EmailVerifyStatus})) or {PREH.udEmailVerify} = {?EmailVerifyStatus}) and
(not(hasvalue({?PRCo})) or {PREH.Co} = {?Company})
我不明白你的第二个条件......