【问题标题】:Store dataset count as a variable in a report to use in other tables - SSRS将数据集计数存储为报表中的变量以在其他表中使用 - SSRS
【发布时间】:2014-02-05 23:28:01
【问题描述】:

我们对 SSRS 报告有 2 个查询。

一个查询返回一个数字,即总记录数。 另一个查询返回一个列,我们希望将其除以第一个查询中返回的总数。

所以

查询 1 DATASET(这将始终返回单个值)

TOTAL  
100

查询 2 DATASET(这将返回我们希望除以 q1 答案的值列表)

COL A
1
20
3
49

我们希望在报告中显示的内容

RATIO (A/Total)
1/100
20/100
3/100
49/100

不显示如何在单个 ssrs tablix 中结合这两个数据集。 100 不是集合 2 中表中任何值的聚合,它是一个完全不同的数字,所以我不知道如何编写查询以将这些值带入单个数据集中。

想法?

谢谢,。

MC

【问题讨论】:

  • 我不确定您是否可以将来自两个数据集的数据显示到一个数据窗格中,您需要创建一个数据集并以产生所需结果的方式对查询进行编码。你能显示你的两个查询吗???

标签: sql sql-server-2008 reporting-services


【解决方案1】:

如果您不想合并数据集,可以执行以下操作来实现最终结果。

对于返回单个值的数据集,您可以创建一个隐藏的报表参数 (@MyParam),并由数据集 Query1 填充。您的 Query2 数据集可以保持原样。然后您可以使用以下表达式在报告中填充文本框

=CString(Fields!ColA.value) &"/"& CString(Parameters!MyParam.value) 

如果将其放入列表或表格中,它将遍历 ColA 中的每个值并产生您想要的结果。

【讨论】:

    【解决方案2】:

    为什么不做一个数据集? Err...我假设您希望看到 49/100 而不是 .49 这个答案

    select q2.A + '/' + q1.value as 'output'
    from query2 q2, query1 q1
    

    这是一个交叉连接并将 q1 值应用于所有 q2(因为 q1 只是一个值,这将起作用)...query1 和 query 2 可以替换为您想要的任何查询...您如果您想要更完整的答案,则需要提供 q1 和 q2 的 SQL

    【讨论】:

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