【问题标题】:RDLC Expression counting all rows where value is TrueRDLC 表达式计算值为 True 的所有行
【发布时间】:2017-07-25 10:29:42
【问题描述】:

我需要计算所有“真”的值,但我有 2 个数据集。我看到了很多关于一个数据集的教程,这似乎很容易,因为他们可以命名值并且它可以工作。 我试过的是这个

=Count(IIf((Fields!Usvojena.Value, "DataSetTackeDnevnogReda") = "True", 1, Nothing))
  • Fields!Usvojena.Value 返回 True 或 False
  • “DataSetTackeDnevnogReda”是我的第二个数据集的名称

我收到此错误消息:

textrun 的值表达式 ‘Textbox8.Paragraphs[0].TextRuns[0]’ 有一个范围参数不是 对聚合函数有效。范围参数必须设置为 字符串常量,等于包含的名称 组、包含数据区域的名称或数据集的名称。

由于某种原因,Fields!Usvojena.Value 在我的表达式窗口中总是带有红色下划线

【问题讨论】:

    标签: rdlc


    【解决方案1】:

    您可以使用 SUM 而不是 count 来消除包括“Nothing”值(并且无论如何都要获得您的计数) - 仅对具有 Fields!Usvojena.Value = true 的那些添加一个,如果不是,则添加零。此外,如果该字段是布尔值 True/False,那么您可以这样做:

    =Sum(IIf(Fields!Usvojena.Value, 1, 0))
    

    如果该字段只是一个带有“True”或“False”值的字符串,那么您需要将此值添加到比较中:

    =Sum(IIf(Fields!Usvojena.Value = "True", 1, 0))
    

    对于带有红色的底层证券 - 还要检查字段名称。

    【讨论】:

    • 感谢您的回答。我用布尔值实现了你的代码并且它有效。但我也犯了额外的错误,我在无法处理 ReportDataSource 内容的文本框上实现了我的所有代码。当我将它复制到 tablix 单元格时,它就像一个魅力。因此,我有红色的底层并且没有工作。
    猜你喜欢
    • 1970-01-01
    • 2014-07-22
    • 1970-01-01
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    相关资源
    最近更新 更多