如何从MasterData(FastReport模板)中获取全量数据的高度?

How to get a height of the full data from MasterData (FastReport template)?

我想获得包含完整生成数据的 MasterData 高度。通常我使用 MasterData

的事件 onAfterCalcHeight
 if engine.FreeSpace <= GroupHeader2.Height  + MasterData1.Height  then
engine.NewPage;

.我需要上面一行代码,因为我的模板在页面之间剪切了数据。

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

首先,我创建了一个全局双变量,用于完整的 masterdata1.Height 和另一个 height-variable 组件。

var  
masterdata_Height,GroupHeader2_Height: double;

接下来是 masterdata 事件 OnAfterCalcHeight 一个简单的

  masterdata_Height:=masterdata.Height;

与另一个 FastReport 相同 headers。

在所有 Headers 事件之后 OnBeforePrint 我添加一个条件 :

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

括号中的条件添加了接近标题事件的所有尺寸 headers。