【问题标题】:SSRS List/Tablix behavior ignoring white space忽略空格的 SSRS 列表/Tablix 行为
【发布时间】:2018-04-26 14:11:42
【问题描述】:

我有一个在 VS 2013 Shell 中设计的 SSRS 报告,其中一个列表中有 2 个表。

表 1 对每个数据分组都有一行,它隐藏了除属于该数据组的行之外的所有行。第一个表充当我的第二个表的标题。

在第二个表之后是列表内的一个小间隙,它在我的标题和数据表的下一次迭代之间创建视觉空白。

在 VS Preview 中,报表的外观与设计完全一致。在 IE 和 Chrome 中,报告有时会忽略空格。以下是它在“设计”选项卡、“预览”选项卡和浏览器中的外观截图:

上面的屏幕截图显示了 2 个表格相互重叠的列表。第一个表包含在标题中。第二个在“下一个季度...”标题之后开始。在第二个表格之后是列表内比 0.25" 略大的间隙。

您可以在上图中的预览中看到表格和下一个标题之间的间隙可见

在上面的浏览器示例中,“Proactive”标题之前缺少间隙,但在“Proposed Visit”标题之前可见。

这是控制行可见性的代码:

                          <TablixRowHierarchy>
                            <TablixMembers>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 1, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 2, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 3, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 4, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 5, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 6, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 7, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 7, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 8, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                            </TablixMembers>
                          </TablixRowHierarchy>

【问题讨论】:

    标签: reporting-services visual-studio-2013 report


    【解决方案1】:

    这个问题很可能归结为 HTML 解释。在很多情况下,浏览器会忽略空的表格元素。

    在该元素中添加空格的简单答案也不起作用,因为某些浏览器也会忽略没有任何其他内容的空格。因此,您可以执行以下操作之一:

    添加一个数字 1 并使该字符的字体颜色为白色。这将强制渲染空白行并且 1 将不可见,但如果您突出显示该行或导出,它将显示。

    更好的解决方案:在空行中添加一个表达式。通过右键单击它转到表达式属性。在第一页的标记类型下,单击 HTML - 将 HTML 标记解释为样式单选按钮。单击值旁边的 fX 按钮将其放入:

    ="&nbsp;"
    

    这将在浏览器不会忽略的行中放置一个空格,并且应该强制它永远呈现更多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-17
      • 1970-01-01
      • 2015-03-18
      • 1970-01-01
      • 2018-12-19
      • 2016-06-23
      • 1970-01-01
      相关资源
      最近更新 更多