Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reporting services SSRS分页符问题_Reporting Services - Fatal编程技术网

Reporting services SSRS分页符问题

Reporting services SSRS分页符问题,reporting-services,Reporting Services,我对正在编写的报告有意见。我正在尝试设置此报告,以便在打印时选择双面打印选项,并在正面和背面正确打印数据。我已经有了这项工作,当有5套记录被打印出来 我有一个3列乘2行的表格。在该表格的A1单元格中,我有另一个表格,其中包含将在纸张正面打印的所有数据。在外部tablix的单元格C3中,我有一个内部tablix,其中包含背面的所有数据。单元格B2、B3、A1和A2为空。B列的创建宽度正确,前后格式正确,数据可以正确对齐 我的行组有这样一个表达式:=上限(RowNumber(nothing)/5),

我对正在编写的报告有意见。我正在尝试设置此报告,以便在打印时选择双面打印选项,并在正面和背面正确打印数据。我已经有了这项工作,当有5套记录被打印出来

我有一个3列乘2行的表格。在该表格的A1单元格中,我有另一个表格,其中包含将在纸张正面打印的所有数据。在外部tablix的单元格C3中,我有一个内部tablix,其中包含背面的所有数据。单元格B2、B3、A1和A2为空。B列的创建宽度正确,前后格式正确,数据可以正确对齐

我的行组有这样一个表达式:=上限(RowNumber(nothing)/5),它允许报告完美地输出第1页前5条记录的前端数据,输出第2页前5条记录的后端数据,等等,只要记录数是5的倍数

我的问题是,当奇数不是5的倍数时,我无法正确地将其分页符。例如,如果在第一组5条记录之后还剩下4条记录,则正面数据将打印前4条记录,然后立即在同一页上打印背面数据,而不带分页符

我能做什么让它在前4条记录之后分页符,然后输出背面数据。当然,这需要动态工作,以便无论是否还有4、3、2或1条记录,它都会在第一次分组后分页符


如果能提供任何帮助,我将不胜感激。提前谢谢

如果您在报告末尾总是遇到这个问题,您可以执行以下操作来解决您的问题。这可能不是最灵活的解决方案,但它会完成工作

在将数据源/数据集发送给报告程序之前,只需确定记录的总量。一个或多个
数据表中存在一个
数据集
,因此这将根据您的构建方式而有所不同,但通过下面的一行,您应该能够确定记录/行的总量

var rCount = myDataSet.Tables[0].Rows.Count();
现在,您可以使用它来计算页面顶部缺少的行的数量,并在数据源的末尾添加带有空字段的替换行。 通过使用C#中的
%
运算符取5的模(在您的特定情况下),计算缺少的行数。
要添加空行,您必须简单地创建空对象,以便在报告中不打印任何内容。为了确保这项工作完美无瑕,您可能必须在Tablix单元格中添加表达式以捕获任何空值,并用空字符串替换它们

for (int i = 0; i < rCount % 5; i++ )
{
    myDataSet.Tables[0].Rows.Add(new MyObjectClass());
}
for(int i=0;i

如果您的数据集碰巧有多个数据表,只需对其他表执行相同的操作。

为什么突然有4条记录?如果这是您的数据源的结尾,我会理解这一点,但之后您会有更多记录。您是否通过先分组然后添加5条记录限制来拆分数据源?还是使用多个数据源?这很令人困惑。。。也许您可以简单地在数据源中每个组的末尾插入空行,以满足5个限制。使用组大小和模数5,您将知道必须添加哪个提醒(rest)。如果我把您弄糊涂了,请原谅。例如,我的数据集有9条记录。前5条记录正确显示,数据正面显示在第一页,背面显示在第二页。然后,其余4条记录的前四条正面数据打印在第三页上,但这四条记录的背面数据继续打印在第三页上。这里没有分页符。这就是我正在努力实现的目标。谢谢你的回复。