One solution is to use the Report.OnPreviewCreate event to either set the PreviewForm.Caption directly or to set PreviewForm.DisplayDocumentName to True, in which case the Report.PrinterSetup.Document will be displayed.
Another solution is to create a custom PreviewForm and register it as the default preview form
------------------------------------------------------------ Tech Tip: Replacing Built-in Dialogs/Forms in ReportBuilder ------------------------------------------------------------
ReportBuilder has an open architecture for replacing any of the built-in dialogs. You can replace any of the built-in dialogs by creating a new form that inherits from an abstract ancestor and then registering it as the new built-in dialog.
For example to replace ReportBuilder's print dialog you could
1. Create a new Print dialog by renaming ReportBuilder's default print dialog, then doing a SaveAs to save it under another unit name.
The default dialog resides in RBuilder\Source\ppPDlg.pas and the form is called ppPrintDialog. You should assign your form a unique name, for example, myPrintDlg, and save the unit to another name. Also save the unit to the directory where your other forms are stored (not RBuilder\Source).
2. Make desired changes.
You will notice that the print dialog inherits from an ancestor TppCustomPrintDialog - this ancestor resides in ppForms.pas (where all the abstract ancestor forms for ReportBuilder are defined).
3. Register the new form.
Declare an initializtion section at the bottom of the unit:
Comments
One solution is to use the Report.OnPreviewCreate event to either set the
PreviewForm.Caption directly or to set PreviewForm.DisplayDocumentName to
True, in which case the Report.PrinterSetup.Document will be displayed.
Example:
procedure TForm1.ppReport1PreviewFormCreate(Sender: TObject);
begin
ppReport1.PreviewForm.DisplayDocumentName := True;
// ppReport1.PreviewForm.Caption := 'MyReport';
end;
Another solution is to create a custom PreviewForm and register it as the
default preview form
------------------------------------------------------------
Tech Tip: Replacing Built-in Dialogs/Forms in ReportBuilder
------------------------------------------------------------
ReportBuilder has an open architecture for replacing any of the built-in
dialogs. You can replace any of the built-in dialogs by creating a new form
that inherits from an abstract ancestor and then registering it as the new
built-in dialog.
For example to replace ReportBuilder's print dialog you could
1. Create a new Print dialog by renaming ReportBuilder's default print
dialog, then doing a SaveAs to save it under another unit name.
The default dialog resides in RBuilder\Source\ppPDlg.pas and the form is
called ppPrintDialog. You should assign your form a unique name, for
example, myPrintDlg, and save the unit to another name. Also save the unit
to the directory where your other forms are stored (not RBuilder\Source).
2. Make desired changes.
You will notice that the print dialog inherits from an ancestor
TppCustomPrintDialog - this ancestor resides in ppForms.pas (where all the
abstract ancestor forms for ReportBuilder are defined).
3. Register the new form.
Declare an initializtion section at the bottom of the unit:
initialization
ppRegisterForm(TppCustomPrintDialog, TMyPrintDialog);
4. Add the new unit to your project and compile.
Now your print dialog should be automatically created and destroyed by
ReportBuilder.
--
Tech Support mailto:support@digital-metaphors.com
Digital Metaphors http://www.digital-metaphors.com
--
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com