Delphi FastReport预览未显示所有页面
我正在使用Turbo Delphi Pro中的FastReport 4.7.31 以下过程根据用户输入处理存储在多个日期文件中的数据Delphi FastReport预览未显示所有页面,delphi,preview,fastreport,Delphi,Preview,Fastreport,我正在使用Turbo Delphi Pro中的FastReport 4.7.31 以下过程根据用户输入处理存储在多个日期文件中的数据 procedure TfrmMain.MyReportPrint; var MDate : Tdate; S, myfile : string; firstone: boolean; // Date1, Date2 & ShowPreview are global variables set via a dialog bo
procedure TfrmMain.MyReportPrint;
var MDate : Tdate;
S, myfile : string;
firstone: boolean;
// Date1, Date2 & ShowPreview are global variables set via a dialog box
begin
firstone := true;
MDate := Date1;
while MDate < IncDay(Date2, 1) do
begin
DateTimeToString(S,'yyyymmdd',MDate);
myfile := 'm' + S + '.dbf';
if FileExists(DataPath + '\' + myfile) then
begin
tblPS.Close;
tblPS.TableName := myfile;
frxMyReport.PrepareReport(firstone);
firstone := false;
end;
MDate := IncDay(MDate, 1);
end;
if ShowPreview then frxMyReport.ShowReport else frxMyReport.Print;
end;
程序TfrmMain.MyReportPrint;
var-MDate:Tdate;
S、 myfile:string;
第一种:布尔型;
//Date1、Date2和ShowPreview是通过对话框设置的全局变量
开始
第一个:=正确;
MDate:=日期1;
而MDate
frxMyReport.Print打印所有页面
frxMyReport.ShowReport只显示准备的最后一页。
ShowReport
方法采用可选参数ClearLastReport
,其默认值为true。无论是真是假,ShowReport
都会在显示报表之前准备报表,因此在代码中,您将放弃所有已准备的内容,然后使用最近分配的表设置重新准备报表。如果对代码所做的唯一更改是将False
传递到ShowReport
,那么您会发现预览显示了所有页面,但重复了最后一页
与ShowReport
相反,Print
方法不准备报告。它只打印已经准备好的内容。您想要预览的是ShowPreparedReport
,而不是ShowReport
。参见FastReport程序员手册第1.9节