1

我正在尝试构建一个包含 2 个子报告的 SSRS 报告。每个子报表使用一个带有 SharePoint 列表的数据集作为其数据源。

通常在尝试控制 SP 查询的长度时,我使用以下 group by 表达式;

=ceiling(Rownumber(nothing)/N)

这通过帮助设置分页点以适合 Web 部件来很好地工作。

但是当尝试堆叠两个子报告时,当第一个子有很多结果时,第二个子仍然被推回很多页。

我认为我应该限制报告中数据集查询中的结果数量,类似于使用 SQL 表数据源进行查询时

select top 10

问题是我不熟悉 SharePoint 列表是数据集时使用的查询语言。

您能否告知需要在下面插入什么以限制返回结果的数量。

<RSSharePointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ListName>SPUD</ListName>
<ViewFields>
<FieldRef Name="Title" />
<FieldRef Name="Description" />
<FieldRef Name="Quantity" />
<FieldRef Name="Condition" />
<FieldRef Name="_x004c_OC1" />
<FieldRef Name="PIM" />
</ViewFields>

此外,请告知如何将报告参数传递给上述查询。(我目前使用过滤器功能,但如果返回的结果数量在查询中受到限制,则该功能将不起作用。)

最后,可以通过一些 tablix 参数设置我的要求吗?

感谢您的帮助,如果您需要任何其他信息,请告诉我。

4

1 回答 1

3

您可以通过隐藏您不想要的额外行来伪造它。单击Detail行句柄以突出显示 tablix 中的整个详细信息行。转到Visibility-Hidden属性并输入以下公式:

=RowNumber(Nothing) > 10

您可以将参数传递给报告以限制显示的行:

=RowNumber(Nothing) > Parameters!MaxRows.Value
于 2013-10-08T03:59:26.703 回答