Tablix:在每个页面上重复标题行无效 – Report Builder 3.0
我有一个tablix有很多行跨越多个页面。 我已经在每个页面上设置了Tablix属性重复标题行,但这不起作用。 我在某处读到这是Report Builder 3.0中的一个已知错误。 这是真的? 如果不是,还有什么需要做的?
这取决于您正在使用的Tablix结构。 例如,在表中,您没有列组,因此Reporting Services无法识别哪些文本框是列标题,并将RepeatColumnHeaders属性设置为True不起作用。
相反,你需要:
- 在“分组”窗格中打开“高级模式”。 (点击列组右侧的箭头并select高级模式。)
- 在“行组”区域(不是“列组”)中,单击一个静态组,这会突出显示Tablix中相应的文本框。 点击每个静态组,直到突出显示最左边的列标题。 这通常是列出的第一个静态组。
- 在属性窗口中,将
RepeatOnNewPage
属性设置为True。 - 确保
KeepWithGroup
属性设置为After
。
KeepWithGroup
属性指定静态成员需要粘贴的组。 如果设置为After
那么静态成员会在该组之后,或者在其下面,作为组标题进行组织。 如果设置为Before
,那么静态成员会在组之前或之上粘贴组,作为组页脚。 如果设置为None
,Reporting Services将决定将静态成员放置在哪里。
现在,当您查看报告时,列标题会在Tablix的每个页面上重复。
本video展示了如何正确设置所描述的答案。
我有2.0,发现上面的帮助; 然而,由于某种原因,静态select不会突出显示单元格。 我遵循这些步骤:
- 在列组下select高级,静态会显示出来
- 点击行组中显示的静态
- 将KeepWithGroup设置为After,RepeatOnNewPage设置为true
现在您的列标题应该在每个页面上重复。
如果您仍然遇到这个问题,另一种方法是通过执行以下操作:
- 清除所有表头文本留空。
- 在报表“标题”部分添加一个矩形内的文本框,每个文本框将代表该表的列标题。
- 由于这个矩形位于Reports Header部分,它将显示在所有报告页面上。
谢谢你,Sufian
在“分组”窗格中打开“ Advanced Mode
”。 (点击列组右侧的箭头并select高级模式。)
在“行组”区域(不是“列组”)中,单击一个静态组,这会突出显示Tablix中相应的文本框。
点击每个静态组,直到突出显示最左边的列标题。 这通常是列出的第一个静态组。
在属性网格中:
- 将
KeepWithGroup
设置为After
- 将
RepeatOnNewPage
设置为True
以重复标题 - 将
FixedData
设置为True
以保持标题可见
我如何解决这个问题是我手动更改后面的代码(从菜单视图/代码)。 以下部分应该具有与Tablix中的行数一样多的<TablixMember> </TablixMember>
对。 在我的情况下,我有更多的对<TablixMember> </TablixMember>
比tablix中的行数。 另外,如果转到“高级模式”(在“列组”之后),“行组”后面的静态行数应该等于Tablix中的行数。 使它相等的方法是改变代码。
<TablixRowHierarchy> <TablixMembers> <TablixMember> <KeepWithGroup>After</KeepWithGroup> <RepeatOnNewPage>true</RepeatOnNewPage> </TablixMember> <TablixMember> <Group Name="Detail" /> </TablixMember> </TablixMembers> </TablixRowHierarchy>
我的工作是从头开始创build一个新的报告。
这样做和新的工作报告,我会比较Visual Studio中的2 .rdl文件。 这些都是XML格式,我希望快速WindDiff或什么东西会揭示这个问题。
最初的样子显示,有700行代码或两个文件之间有点差异,其中2个中较大的是错误的文件。 粗略看一下TablixHeader标签并没有透露任何明显的信息。
但在我的情况下,这是一个损坏的.rdl文件。 这是最初从一份工作报告中复制的,所以在删除那些没有被重复使用的过程中,这可能会破坏它。 但是,在完成相同过程的其他报告中,如果在“属性”中进行了正确的设置,标题可能会重复。
希望这可以帮助。 如果你有一个复杂的报告,这不是快速修复,但它的工作原理。
也许比较已知的好的XML文件和错误的文件将会成为一个很好的论坛post。 我将尽我所能。