首页 > 解决方案 > 将查询转换为 Crystal Report 公式

问题描述

我有这个 SQLl 查询

SELECT SUM(Area) * 10000
FROM TaxDecRecord
where RealPropertyUnitSubClassification like 'Residential'
and RealPropertyUnitClassification like 'TAXABLE PROPERTIES'); 

我在 Crystal Report 中尝试了这个公式,但结果是 true 或 false

SUM({TaxDecRecord.Area}) * 10000 & 
{TaxDecRecord.RealPropertyUnitClassification}= "TAXABLE PROPERTIES" &
{TaxDecRecord.RealPropertyUnitSubClassification}= "Residential"

非常感谢您的帮助,谢谢!

标签: c#sqlsql-servercrystal-reports

解决方案


您的公式缺少 SQL 查询中条件语句的逻辑。相反,它们只是与数字组合的语句。这些陈述只能评估为 True 或 False 书面。您需要使用 IF..THEN..ELSE 或 CASE 语句来评估条件语句。试试这个公式:

IF {TaxDecRecord.RealPropertyUnitClassification}= "TAXABLE PROPERTIES" AND TaxDecRecord.RealPropertyUnitSubClassification}= "Residential"
THEN SUM({TaxDecRecord.Area}) * 10000

但是,此公式字段在报告中的放置位置很重要。如果在 Header 部分中使用它,它可能无法正确汇总数据,因为在打印 header 部分时可能存在尚未评估的数据行。这将使公式的结果成为一个累加字段,仅对已评估的数据行求和。


推荐阅读