【问题标题】:SSRS divide total group amount using TablixSSRS 使用 Tablix 划分总组金额
【发布时间】:2019-11-13 02:18:07
【问题描述】:

我想根据下面的屏幕截图使用表达式来获取两行的百分比。

Click Here to View Screen Shot

总组 = 成本 / 收入

Click here to view the actual value

【问题讨论】:

    标签: reporting-services percentage ssrs-tablix


    【解决方案1】:

    您应该能够使用ReportItems 语法直接引用文本框的值,如下所示:

    = ReportItems!TotalRow3.Value / ReportItems!TotalRow1.Value
    

    确保将TotalRow 部分替换为文本框的实际名称,这样应该会得到正确的结果。

    【讨论】:

    • 您可能需要注意除以 0 错误。有很多解决方案可以解决这个 ssrs 小问题!
    • 您好史蒂夫,感谢您的回复。显然,行是从数据库中动态填充的。我附上了 SSRS 实际生成的报告。这是我的公式:IIF(ReportItems!Header.Value = "Cost",ReportItems!Textbox52.Value,0)/IIF(ReportItems!Header.Value="Revenue",ReportItems!Textbox52.Value,0) 注意:ReportItems! Textbox52.Value 是总列。不幸的是,显示#Error ..
    • @JP80 Harry 提出了一个很好的观点——您应该将False 的值设置为 1,而不是零。另外,是否可以使用数据集提供的值重写它? =SUM(IIF(Fields!Header.Value = "Cost", Fields!Textbox52.Value, 0)) / SUM(IIF(Fields!Header.Value = "Revenue", Fields!Textbox52.Value, 1))
    • @Steve-o169 仍然无法正常工作。无论如何,是否可以使用带参数的表达式调用子报表?
    • @JP80 不,您无法从子报表中获取数据,但您可以将子报表中使用的数据集添加到外部报表中并获取相同的值。