同じような経験をしたことがある人がいないか気になりました。問題の原因を突き止めようとしていますが、問題はありません。Report Builder レポートを含む Delphi 5 のプロジェクトがあります。reportbuilder のアップグレード バージョンが必要だったので、Delphi 7 でプロジェクトを実行してみました。プロジェクトを実行し、ボタンをクリックしてレポートを表示すると、正常に表示されます。ただし、paramstr を使用してレポートを実行し (showmainform を false に設定)、レポート プロシージャの実行を表示すると、スタック オーバーフロー エラーが発生します。
元のコードは次のとおりです。
if lowercase(ParamStr(1)) = 'termsexceeded' then begin
reportsdata.termsexceeded.close;
reportsdata.termsexceeded.open;
reports.ppTermsExceeded.print;
reportsdata.termsexceeded.close;
application.terminate;
end;
そして、.print関数でスタックオーバーフローエラーが発生しました。
Delphi 7 で動作するコードは次のとおりです。
if lowercase(ParamStr(1)) = 'termsexceeded' then begin
reportsdata.termsexceeded.close;
reportsdata.termsexceeded.open;
reports.left := -10000;
reports.show;
reports.ppTermsExceeded.print;
reportsdata.termsexceeded.close;
application.terminate;
end;
問題が Delphi 7 にあるのか Reportbuilder にあるのかを確認するためにこれをデバッグする方法について誰か提案がありますか?
レポート フォームの .show イベントにイベントはありません。
この問題を解決する方法についてのアドバイスをいただければ幸いです。
よろしく