在预览中运行报告时,我收到以下错误报告的定义无效,tablix 'Tablix11' 包含无效的 TablixMember。如果省略 Group,则不允许使用排序表达式元素。
我以前从未遇到过这个错误,也无法理解是什么原因造成的。
在预览中运行报告时,我收到以下错误报告的定义无效,tablix 'Tablix11' 包含无效的 TablixMember。如果省略 Group,则不允许使用排序表达式元素。
我以前从未遇到过这个错误,也无法理解是什么原因造成的。
可以通过创建一个简单的 Tablix 并查看底层 XML 来复制该错误。
当您使用组创建 Tablix 时,底层 RDL XML 将包含如下内容:
<TablixRowHierarchy>
<TablixMembers>
<TablixMember />
<TablixMember>
<Group Name="Group1">
<GroupExpressions>
<GroupExpression>=Fields!val.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!val.Value</Value>
</SortExpression>
</SortExpressions>
<TablixMembers>
<TablixMember>
<Group Name="Details3" />
</TablixMember>
</TablixMembers>
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
如果您删除整个Group
元素,这将给出您看到的相同错误:
如果您还删除了该SortExpressions
元素,这将允许报告无错误地呈现。
但是 - 我不可能首先说出您的 RDL 文件是如何进入这种状态的。鉴于破解 XML 以使事情运行很少是一个好主意,我的建议是从头开始启动 tablix,而不是将事物破解到工作状态 - 您可能只是引入了更多问题。
但至少希望现在您可以看到错误可能发生的原因。
我发现 Tablix 标题有一个包含交互式排序的文本框属性。此文本框位于标题中,而不是详细信息的一部分。当我从 tablix 的详细信息中删除该字段时,交互式排序仍保留在标题的文本框中。
通过右键单击 tablix 的标题文本框在标题上更改它,然后选择文本框属性,然后选择“交互式排序”,然后将“排序依据”值更正为正确的字段名称就可以了。