Tablix:每个页面上的重复标题行不起作用 - Report Builder 3.0

时间:2012-07-01 21:55:28

标签: sql-server reporting-services ssrs-tablix reportbuilder3.0

我有一个包含许多行的Tablix,这些行跨越多个页面。我已经在每个页面上设置了Tablix属性重复标题行,但这不起作用。我在某处读到这是Report Builder 3.0中的已知错误。这是真的?如果没有,还有什么需要做的吗?

6 个答案:

答案 0 :(得分:383)

这取决于您使用的Tablix结构。例如,在表中,您没有列组,因此Reporting Services无法识别哪些文本框是列标题,并且将RepeatColumnHeaders属性设置为True不起作用。

相反,您需要:

  1. 在“分组”窗格中打开“高级模式”。 (单击“列组”右侧的箭头,然后选择“高级模式”。)
    • Screenshot
  2. 在“行组”区域(不是“列组”)中,单击“静态”组,该组突出显示Tablix中的相应文本框。单击每个静态组,直到它突出显示最左侧的列标题。这通常是列出的第一个静态组。
  3. 在“属性”窗口中,将RepeatOnNewPage属性设置为True。
    • Screenshot
  4. 确保KeepWithGroup属性设置为After
  5. KeepWithGroup属性指定静态成员需要粘贴的组。如果设置为After,则静态成员会在其后面或其下方粘贴组,充当组头。如果设置为Before,则静态成员会在组之前或之上与组合作为组页脚。如果设置为None,Reporting Services将决定将静态成员放在何处。

    现在,当您查看报告时,列标题会在Tablix的每个页面上重复。

    This视频显示了如何将其设置为所描述的答案。

答案 1 :(得分:14)

我有2.0并发现以上帮助;但是,由于某种原因,静态的选择并未突出显示单元格。 我按照以下步骤操作:

  1. 在列组下,选择高级,静态将显示
  2. 单击行组中显示的静态
  3. 将KeepWithGroup设置为After并将RepeatOnNewPage设置为true
  4. 现在您的列标题应该在每个页面上重复。

答案 2 :(得分:8)

在“分组”窗格中打开Advanced Mode。 (单击“列组”右侧的箭头,然后选择“高级模式”。)

在“行组”区域(而不是“列组”)中,单击“静态”组,该组突出显示Tablix中的相应文本框。

单击每个静态组,直到它突出显示最左侧的列标题。这通常是列出的第一个静态组。

在属性网格中:

  • KeepWithGroup设为After
  • RepeatOnNewPage设置为True以重复标题
  • FixedData设置为True以保持标题可见

答案 3 :(得分:7)

我如何修复此问题是我手动更改后面的代码(从菜单View / code)。 以下部分应具有与Tablix中的行数一样多的对<TablixMember> </TablixMember>。在我的情况下,我有更多对<TablixMember> </TablixMember>而不是tablix中的行数。此外,如果转到“高级模式”(“列组”右侧),“行组”后面的静态行数应等于Tablix中的行数。使其平等的方法是改变代码。

<TablixRowHierarchy>
      <TablixMembers>
        <TablixMember>
          <KeepWithGroup>After</KeepWithGroup>
          <RepeatOnNewPage>true</RepeatOnNewPage>
        </TablixMember>
        <TablixMember>
          <Group Name="Detail" />
        </TablixMember>
      </TablixMembers>
    </TablixRowHierarchy>

答案 4 :(得分:5)

如果仍有这个问题,另一种方法是通过执行以下操作来实现此目的:

  • 清除所有表头文本,将其留空。
  • 在报告“标题”部分添加矩形内的文本框, 每个文本框都代表表格的列标题。
  • 由于此矩形位于Reports Header部分,它将显示 在所有报告页面上。

谢谢, 苏菲安。

答案 5 :(得分:2)

对我有用的是从头开始创建新报告。

完成此操作并且新报告正常工作,我将比较Visual Studio中的2个.rdl文件。这些是XML格式,我希望快速WindDiff或其他东西可以揭示问题所在。

初步显示两个文件之间有700行代码或更多差异,其中较大的2是错误文件。粗略地看一下TablixHeader标签并没有发现任何明显的东西。

但在我的情况下,它是一个损坏的.rdl文件。这最初是从一份工作报告中复制的,因此在删除未重复使用的内容的过程中,这可能会损坏它。但是,在完成相同过程的其他报告中,当在“属性”中进行正确设置时,标题可能会重复。

希望这会有所帮助。如果您有一份复杂的报告,这不是快速解决方案,但可行。

或许将已知的优秀XML文件与错误的XML文件进行比较会成为一个很好的论坛帖子。我会尽力而为。