彩票走势图

logo FastReport中文文档
文档彩票走势图>>FastReport中文文档>>打破数据并保持其一致性

打破数据并保持其一致性


在本节中,我们将研究两种数据打印模式--"Break "和 "Keep together"。

在常规的带状打印模式中,FastReport检查当前页是否有足够的空间来打印一个带状。如果没有,则在下一页上全部打印出带子。如果带子的 "CanBreak "属性被激活,FastReport将尝试将带子的一部分打印在可用的空间上,也就是 "Break "。

打破一个带子的尝试可以成功,也可以不成功。这取决于被放置在带子上的对象的类型和它的设置。以下物体可以被打破:

  • "Text"
  • "Rich Text"
  • "Table"
这些对象也有 "CanBreak "属性。如果它被启用,那么该对象就可以被打破。不易破碎的对象总是完全显示,在那里,它们有足够的位置。

在下图中,显示了一个带子是如何被打破的。

7
Break algorithm does not always work correctly. The artifacts can occur in a situation, when there are several objects with different font size on a band.

断带的目的是为了节省印张上的空间。数据保持的目标则相反:在一张纸上完全显示一组带子。在这种情况下,虽然纸张上会有很多未使用的空间,但数据的打印方式让人很舒服。

"keep together "机制允许将一组带子保持在一张纸上(或列,如果报告有列的话)。如果在打印时,保留的数据到了页面的末端,FastReport会将所有已经打印过的数据重新定位到新的页面。 

你可以在以下情况下使用 "keep together":

一起打印 "Data"带的所有行;

一起打印一个组的所有元素(页眉、数据、页脚);

将主数据源的行与所有明细行一起打印(在 "master-detai "报告中);

打印报告页眉或数据页眉与至少一个数据行;

打印报告页脚或数据页脚以及至少一个数据行;

一起打印父带和子带。

让我们来看看 "keep together "机制的使用情况。

要把所有的数据行或组元素(页眉、数据、页脚)放在一起,请启用 "KeepTogether "属性。这个属性在 "Data "和 "Group Header "带中使用。

下图显示了在有和没有保持在一起的情况下数据的打印情况:

8

要把主数据行和详细数据行放在一起,请启用 "KeepDetail "带的 "KeepDetail "属性。这个属性用于 "master-detail "类型的报告中:

10

为了防止 "hanging "页眉和页脚,请使用 "KeepWithData "属性。下面这些带子都有这个属性:

  • report header
  • 报告页脚
  • data header
  • 数据页脚
  • 组头
  • 组页脚

这个属性允许保持至少有一个数据行的页眉/页脚: 

11

为了使一个带子和它的子带子保持在一起,启用 "KeepChild "属性。

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP