Filter Cognos10.2中的复合过滤器

Filter Cognos10.2中的复合过滤器,filter,cognos,Filter,Cognos,我在CognosReportStudio 10.2中遇到了一个有趣的情况。我写了一份简单的员工报告,其中有一个报告页面和一个查询 报告的第1版使用八个单独的过滤器(a=1、b=2、c=3,…),输出为12869条记录 版本2与版本1完全相同,不同的是八个过滤器被组合成一个带有复合语句的过滤器(a=1和b=2,c=3和…),输出为12010记录 从逻辑上讲,它们不应该产生相同的输出吗?转到工具-显示从两个报告生成的SQL。使用WinMerge()之类的工具比较生成的SQL。这将使差异变得明显

我在CognosReportStudio 10.2中遇到了一个有趣的情况。我写了一份简单的员工报告,其中有一个报告页面和一个查询

  • 报告的第1版使用八个单独的过滤器(a=1、b=2、c=3,…),输出为12869条记录
  • 版本2与版本1完全相同,不同的是八个过滤器被组合成一个带有复合语句的过滤器(a=1和b=2,c=3和…),输出为12010记录

从逻辑上讲,它们不应该产生相同的输出吗?

转到工具-显示从两个报告生成的SQL。使用WinMerge()之类的工具比较生成的SQL。这将使差异变得明显


如果在查看查询之间的差异后,问题不明显,请在数据库中运行特定于供应商的SQL,并验证您从查询中获得的计数是否与从报告中获得的计数相同。

是否有可能向我们显示复合语句?即使您更改了字段名?这里是复合过滤器:它在WHERE子句中显示了差异,这是我所期望的,但为什么逻辑上相同的两个报告会产生不同的结果?请尝试运行每个查询,并验证计数与报告中的计数是否相同。如果计数是两个不同的数字,但每个数字都匹配1个报告,那么您需要更仔细地查看where子句。如果您愿意,发布两个where子句,我可能会看到这个问题。