具有条件的SSRS和表达式

时间:2013-08-30 10:20:27

标签: sql reporting-services ssrs-expression

我这里有问题, 有银行转账的SSRS报告见附件 Bank Transfer Per Bank

我想添加一个行表达式,它将汇总同一个银行的总金额,即 03001 - 渣打银行有限公司BJL,03002 - 渣打银行sk和03002 - 渣打银行基地均为标准包机,我想获得所有标准包机GMD数据。如果需要更多说明,请询问。

注意:像上面的标准章程一样的银行有一个名为BankAName的公共字段。因此可以设置总和条件以检查BankAName是否相同。

3 个答案:

答案 0 :(得分:40)

你需要这样的东西:

=Sum(IIf(Fields!BankAName.Value = "Standard Chartered Bank"
    , Fields!Amount.Value
    , Nothing)
  , "DataSet1")

这会检查某个字段(例如BankAName),如果它是某个值,那么行的Amount值将被添加到总数中 - 这似乎就是您所追求的。您可能需要修改字段名称/值。

通过将聚合的范围设置为数据集,这将适用于表中的所有行;你可以根据需要修改它。

答案 1 :(得分:1)

修改您的SQL查询并添加显示您想要的值的新列

SELECT *, SUM(Amount) OVER(Partition By BankAName) AS BankANameSum
FROM myTable
Where Cond1 = Cond2

BankANameSum 是您可以在报表设计中使用的数据字段。无需应用任何逻辑。

HTH。

答案 2 :(得分:0)

最终创建了一个新的群组,银行按银行分行,然后每个群组创建一个总和。 谢谢你们,你的回答给了我一个新的视角。