sql-server - 如何修复SSRS每页中的组数
问题描述
我有一个显示 6 组(每组 5 行)信息的报告。该报告有一些过滤器可以由用户修改。当第一次在没有任何过滤器的情况下加载报表时,它在报表查看器和打印页面中的页面呈现是完美的,但是当在报表信息中添加过滤器时,它会变得异常。
下图给出了简单的解释:
任何人都可以提出任何建议来修复每页中的行数/组数吗?
解决方案
我将提供两种方法来解决这个问题
(1)尽量防止文本框扩大
我将假设您正在显示以下链接中提到的报告参数(过滤器) :
然后,您应该将CanGrow
属性设置为False
从文本框属性窗格中,如以下文章中所述:
还要确保未在“文本框属性”对话框Allow height to increase
中选中该属性
有用的网址:
(2) 限制每页的行数
在搜索这个问题时,我发现了以下解决方案,它可以用作每页分配行的解决方法:
您可以使用条件方法指定每页的限制行数。如果是第一页,则以10
(2组)为例,对于其他页面15
(3组)。
您应该按照以下步骤操作:
转到
Report
>>Report Properties
>>Code
,在该Custom Code
部分中,输入以下内容:Public Function PageNumber() as String Dim str as String str = Me.Report.Globals!PageNumber.ToString() Return str End Function Public Function TotalPages() as String Dim str as String str = Me.Report.Globals!TotalPages.ToString() Return str End Function
现在使用分页符创建您的组,如下 SSRS 表达式:
= IIf ( CInt(Code.PageNumber()) = 1, Ceiling((RowNumber(Nothing)) / 10), Ceiling((RowNumber(Nothing)) / 15) )
结果将如下图所示:
参考资料和有用的链接
(3) 根据 OP 评论更新
将组行保持在同一页面上的另一种方法是将属性设置Keep together
为 true:
Row_Group >> Properties >> Keep together = True.
推荐阅读
- python - 如何使用 Python 和 SQL 在父对象中获取子对象?
- c++ - 打印与存储在变量中的值相同数量的字符
- python - 黑体辐射与蟒蛇的整合
- google-sheets - 四列 Google 表格的独特功能
- azure-devops - 在 ADO 中使用 Azure AD 托管标识/服务主体用户来使用 ADO API
- java - JSON 只显示最后一个元素
- python - Plotly 和袖扣的色调
- r - 如何将分配为 0 或 1 的数据分组?
- angular - 如何在 Angular 搜索栏中显示建议?
- python - python - 如何找到三个参数以最佳地使曲线适合python中的另一条曲线?