SSRS向下钻取报告未正确过滤参数

时间:2018-06-20 20:21:42

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

我在SQL Server中有一对存储过程,“ Rollup”和“ DrillDown”。我想使用SSRS显示它们。

  • “汇总”将记录分为四个组(种类,性别,肤色,情感状态),并显示这些类别中的总记录。这些类别总计将是超链接。在下面的草图中,每个n是一个链接。
  • 单击链接时,
  • “向下钻取”将打开一个列出记录的新报告。

    Rollup:
                          |   emotional_state    | 
    kind   gender   color | happy | sad  | angry | 
    -----|--------|-------|-------|------|-------| 
    cat  | female | brown |   n   |  n   |   n   | 
    cat  | female | white |   n   |  n   |   n   | 
    cat  | female | black |   n   |  n   |   n   |
    cat  |  male  | brown |   n   |  n   |   n   |
    cat  |  male  | white |   n   |  n   |   n   |
    dog  | female | brown |   n   |  n   |   n   |
    dog  | female | white |   n   |  n   |   n   |
    dog  | female | black |   n   |  n   |   n   |
    dog  |  male  | brown |   n   |  n   |   n   |
    dog  |  male  | white |   n   |  n   |   n   |
    dog  |  male  | black |   n   |  n   |   n   |
    

问题是大多数n链接没有显示正确的详细信息。一些。回应是一致的。对于某些链接,似乎没有将参数传递给DrillDown过程。

使用来自SQL Server的参数运行DrillDown没问题。例如,通过此EXEC通话以及其他类似的通话,我得到了预期的结果:

EXEC my_shema.DrillDown
      @kind             = 'cat',
      @gender           = 'female',
      @color            = 'brown',
      @emotional_state  = 'happy'

我能够将预期的报告复制为Excel数据透视表。为此,我使用所有my_shema.DrillDown参数运行了NULL(显然,该过程已配置为接受此参数)。我导出到Excel,插入了数据透视表并得到了与上面相同的渲染。总数与“汇总”一致,点击后即可进入正确的详细信息。

对我来说,这意味着问题必须出在以下地方之一:

  • Report Builder 3.0中“汇总”的SSRS设计。
  • Report Builder 3.0中用于“向下钻取”的SSRS设计。
  • “管理>参数”菜单中的其中一个报告的设置(位于可用于查看报告的浏览器视图中)。

在这三个地方之间,有几十个点可以检查参数并旋转设置。但是没有任何帮助。我该如何解决?

1 个答案:

答案 0 :(得分:0)

解决方案是重建至少一份报告。我重建了汇总,一切正常。

正如我所说,有很多地方可以充分了解参数。我相信我的问题很可能是由于访问了其中许多问题,并通过尝试修复导致情况恶化。当我意识到我实际上没有使用这四个参数时,在汇总报告上重新开始看起来很有希望。 (我一直想知道参数是否是一种对象变量,是否需要定义的作用域才能查看其他对象/报告。不...没有那么复杂。)

此外,我发现重建报告仅用了15分钟。在花了几个小时来学习第一个版本后,这让我感到很尴尬,但是我是SSRS的新手,所以这是另一回事。

@StevenWhite的评论间接地非常有帮助。除了提供有用的初始方法外,它还使我在总体上思路更加清晰。