FastReport3.0 中如何實現插入空行功能? ( 积分: 100 )

  • 主题发起人 fantasy7777
  • 开始时间
F

fantasy7777

Unregistered / Unconfirmed
GUEST, unregistred user!
使用FastReport3.0 輸出報表.
輸出記錄中包含多條記錄,在一張報表中一次只顯示2條記錄.如果記錄數爲奇數則在最後一張報表中用空行來補足.
以上功能我在FastReport中使用下面代碼來實現:
var
PageLine: integer; //在現在頁列印到第幾行
PageMaxRow: integer=2; //設定每頁列數

procedure DetailData1OnBeforePrint(Sender: TfrxComponent);
begin
PageLine := <Line> mod PageMaxRow;
if (PageLine =1) and (<line> > 1) then
begin
Engine.NewPage;
Engine.showBand(MasterData2); //將報表主體在下一頁顯示
end;
Child1.visible := False;
end;

procedure Footer1OnBeforePrint(Sender: TfrxComponent);
var
i: integer;
begin
i := iif(PageLine=1, PageMaxRow, PageLine);
Child1.visible := True;
while i <= PageMaxRow do
begin
i := i + 1;
Engine.ShowBand(Child1); //印空白表格
end;
Child1.visible := False;
end;

如果記錄數爲2(我测試時衹有3條數據),則在第一張紙上打出二條記錄外加三个空行.而1條和3條記錄都沒有問題.
請問這樣實現有問題嗎?爲什麽我用2條數據测試就會出錯呢?
 
顶部