我有一个包含此公式的报告
{PRPC.PRGroup} = {?PRGroup} and
{PRPC.PRCo} = {?PRCo} and
{PRDT.EDLType} in ["D", "L"] and
{@AcctMth} in {?BegAcctMth} to {?EndAcctMth} and
{PRDT.EDLCode} = 1
我的问题在于最后一部分
{PRDT.EDLCode} = 1
我现在需要报告还要显示“2”,“3”,“4”和“7”,如果他们碰巧有数据反对他们。我尝试了一个简单的“OR”运算符,它确实填充,但数量应该是461而不是150k奇数。上面的月份参数与工资单月份相关。目前,如果我指定6月15日说6月,字段1 - 仅填充6月15日的工资单数据,但字段= 4 - 带回数年的数据。
有关如何包含{PRDT.EDLCode} = x
的其他实例
答案 0 :(得分:0)
您是否正确使用了OR运算的括号?我的意思是,它应该是:
{PRPC.PRGroup} = {?PRGroup} and
{PRPC.PRCo} = {?PRCo} and
{PRDT.EDLType} in ["D", "L"] and
{@AcctMth} in {?BegAcctMth} to {?EndAcctMth} and
( {PRDT.EDLCode} = 1 OR {PRDT.EDLCode} = 2 )
我不确定Crystal Reports,但在SQL中,逻辑运算符AND优先于OR,就像您可以检查here一样。所以,你需要括号。