【问题标题】:SSRS - Display latest value in column groupSSRS - 在列组中显示最新值
【发布时间】:2015-05-29 15:31:39
【问题描述】:

tables - 我还不能发布图片,所以我发布了示例链接。

我有两张桌子——一张用于销售,一张用于库存。这些表中的日期是周结束日期 - 因此销售额是 1 周的总和,库存是在一周结束时计算的数量。

我想创建一个 SSRS 报告,使用矩阵,按月在列组中显示销售额和库存,并按产品和产品/颜色对行进行分组。

我编写了一个简单的 SQL 查询,按产品 ID 和日期连接表(请参阅参考图片中的“数据集”)。

销售信息可以按常规方式汇总 - 使用 SUM。这可以正常工作。

但是,库存数量不应相加 - 数量是期末的;所以我想在该列和行组中显示该月的最终数量(日期最晚的数量)。

库存数量不仅受销售额影响,还受产值影响,因此我无法计算期末库存。

有没有简单的方法来做到这一点?也许在 SQL 中计算更好?最终报告可能涵盖一年或更长时间的数据,因此会有很多列组。

【问题讨论】:

    标签: reporting-services ssrs-2008 ssrs-2008-r2


    【解决方案1】:

    如果您正在寻找类似的东西,那么您可以使用表达式 SUM(Fields!Sales.Value) 作为您的销售价值,并使用 LAST(Fields!Inventory.Value 作为您的库存价值。您需要对您的数据集按日期,以便您获取数据集中的最后一个值。

    【讨论】:

    • 是的,这就是解决方案。我遇到了其他问题,最后使用交叉申请加入最新日期的库存。
    【解决方案2】:

    SSRS 具有 First(Value)、Last(Value) 等聚合函数。我假设您可以执行以下操作:

    Month  |  Last(Fields!Inventory.Value) | SUM(Fields!Sales.Value)
    

    然后在“行组”功能中,确保它按月分组。我还会确保您的 SQL 是按日期排序的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多