根据已过滤的列过滤/隐藏矩阵中的“空”行

时间:2019-04-26 16:43:26

标签: reporting-services ssrs-2017

我有一个SSRS矩阵,其数据如下:

Country                                  Region                                   Term Count
---------------------------------------- ---------------------------------------- ---- -----------
United States of America                 Georgia                                  SU04 5
United States of America                 Indiana                                  FA12 4
Germany                                  Unknown                                  FA14 1
United States of America                 Maryland                                 FA18 6
United States of America                 Missouri                                 WI03 2
United States of America                 Texas                                    SU07 21
United States of America                 Oregon                                   SP07 4
United States of America                 Wyoming                                  FA10 1

从“国家/地区”到“地区”进行了深入分析。多值参数允许用户选择特定术语。

这是选择SP12,SU12和FA12的典型结果:

SSRS Report Preview

空列被隐藏在列组上,并带有过滤器:

<Group Name="matrix1_Term">
<GroupExpressions>
  <GroupExpression>=Fields!Term.Value</GroupExpression>
</GroupExpressions>
<Filters>
  <Filter>
    <FilterExpression>=Fields!Term.Value</FilterExpression>
    <Operator>In</Operator>
    <FilterValues>
      <FilterValue>=Parameters!Terms.Value</FilterValue>
    </FilterValues>
  </Filter>
</Filters>
</Group>

但是,向行组添加类似的过滤器不起作用:

<Group Name="matrix1_Country">
<GroupExpressions>
  <GroupExpression>=Fields!Country.Value</GroupExpression>
</GroupExpressions>
<Filters>
  <Filter>
    <FilterExpression>=IsNothing(Fields!Count.Value)</FilterExpression>
    <Operator>Equal</Operator>
    <FilterValues>
      <FilterValue DataType="Boolean">false</FilterValue>
    </FilterValues>
  </Filter>
</Filters>
</Group>

我已经尝试了以上(IsNothing(Fields!Count.Value) = FALSE)和整数比较([#Count] >= 1)。我还尝试了很多变体,例如将它们放在行可见性表达式中。

我所做的一切似乎都没有掩藏空旷的国家。具体来说,如果我取消选择SU12,阿根廷应该消失。

当然,底层查询仍然在隐藏列中返回阿根廷的Count,因此我尝试使用参数过滤主数据集,发现表值参数是一个烂摊子。

如何隐藏根据显示的列显示为空的行?

0 个答案:

没有答案