【问题标题】:SUM in asp .net report viewer based on condition基于条件的 asp .net 报表查看器中的 SUM
【发布时间】:2023-03-10 07:50:01
【问题描述】:

我有桌子=>

Main Table  : MT
================
PK SPK Name D1 
==============
1, 0, XYZ, 0
1, 1, A, 99
1, 2, B, 88
1, 3, C, 77
2, 0, NULL, 0
2, 1, NULL, 99
2, 2, Z, 88

现在,数据库和报表查看器都完全显示上述模式。 对于 SPK=0 的每个 PK,我希望第一行中的 D1 总和。 为了在报表查看器中显示 D1 字段,我尝试了这个

=IIF(Fields!SPK.Value=0,SUM(Fields!D1.Value),Fields!D1.Value)

但我在这里错了。在报告查看器中,我在显示的表格上方也得到了相同的结果。 我想要第一行中每个 PK 的 SPK 为 0 的所有值的总和。但我没有得到第一行作为总计 SPK=0 的地方。 此外,D1 始终为 0,其中 SPK=0 来自我要显示 SUM 的数据库中的哪一行。

有什么方法可以在第一行获取 D1 的 SUM 而不是 SPK=0 的 0?

【问题讨论】:

    标签: asp.net sql ssrs-2008 report reporting


    【解决方案1】:

    您可以在查询中获得 d1 的总和,然后在报告中使用它

    SELECT PK, SPK, NAME, CASE WHEN SPK = 0 THEN SUM(D1) OVER(PARTITION BY PK) ELSE D1 END AS D1 MT 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-01
      • 1970-01-01
      • 2019-09-05
      • 1970-01-01
      相关资源
      最近更新 更多