tablix 之外的表达式

问题描述 投票:0回答:1

我们在 tablix 之外有一个表达式,需要计算每个不同 ID 的学分总数。

我们对 ID 的不同计数做了类似的操作,效果很好:

="不同学生列表:"&CountDistinct(Fields!ID.Value, "DataSet1")

我想使用以下内容来计算总学分,但无法找到要使用的数据集:

="总学分:"&Sum(Iif((Fields!TotCredCalc.Value=1, "DataSet1"), (Fields!Total_Credits.Value, "DataSet1")))

它给出了错误:数据区域之外使用的所有聚合都需要一个范围,除非报告包含精确的一个数据集(此特定报告有 4 个数据集)。

有没有办法使用 Iif 函数和多个值来分配数据集?

我尝试了以下表达:

="总学分:"&Sum(Iif((Fields!TotCredCalc.Value=1, "DataSet1"), (Fields!Total_Credits.Value, "DataSet1")))

我想对不同 I ID 的学分进行求和

reporting-services ssrs-2012
1个回答
0
投票

试试这个...

=
"Total Credit Hours: " &
Sum(
    IIF(
        (Fields!TotCredCalc.Value=1),
        (Fields!Total_Credits.Value),
        Nothing
        )
    , "DataSet1")

您会看到一些变化。

  1. 您的原始表达式没有
    False
    IIF
    部分的表达式。
  2. 我已将范围移至
    SUM()

附注:您可能会发现占位符在这种情况下很有用。这意味着您可以在一个文本框中包含两个或多个值,这样您就可以拥有静态文本,然后添加一个占位符,该占位符只是上述表达式的

=SUM(....)
部分。这也意味着您不必担心连接字符串和数字数据,并允许您独立格式化每个部分。

© www.soinside.com 2019 - 2024. All rights reserved.