如何从MasterData(FastReport模板)获取完整数据的高度?

时间:2016-02-10 11:14:17

标签: pascalscript fastreport

我想得到一个完整生成数据的MasterData高度。通常我在MasterData的事件onAfterCalcHeight上使用

 if engine.FreeSpace <= GroupHeader2.Height  + MasterData1.Height  then
engine.NewPage;

。我需要上面的代码行,因为我的模板剪切了数据beetwen页面。

1 个答案:

答案 0 :(得分:0)

这里的问题是事件的顺序。

首先,我为完整的masterdata1.Height和另一个高度变量组件创建一个全局双变量。

var  
masterdata_Height,GroupHeader2_Height: double;

接下来在masterdata事件OnAfterCalcHeight上进行简单的

  masterdata_Height:=masterdata.Height;

与另一个FastReport标题相同。

在所有标题事件OnBeforePrint之后,我添加一个条件:

if engine.FreeSpace <= (masterdata_Height + GroupHeader2_Height)  then
engine.NewPage;

在括号中,条件会添加接近标题事件的所有尺寸标题。