1

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 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;

frxMyReport.Print はすべてのページを印刷します。

frxMyReport.ShowReport は、準備された最後のページのみを表示します。

4

1 に答える 1

2

このShowReportメソッドはオプションのパラメーターを取り、ClearLastReportそのデフォルト値はtrueです。true か falseShowReportかに関係なく、レポートを表示する前に準備するため、コードでは、既に準備したものをすべて破棄し、最後に割り当てられたテーブル設定を使用してレポートを再準備します。Falseコードをに渡すだけの変更を行う場合ShowReport、プレビューにはすべてのページが表示されますが、最後のページが繰り返されます。

とは対照的にShowReportPrintメソッドはレポートを準備しません。すでに準備されているものだけを印刷します。ShowPreparedReportではなく、プレビューが必要ですShowReportFastReport Programmer's Manual のセクション 1.9 を参照してください。

于 2010-05-07T20:22:34.670 に答える