Home End User
New Blog Posts: Merging Reports - Part 1 and Part 2

TExtraDevices

edited May 2004 in End User
ReportBuilderPro 7.03, TExtraDevices 2.67

How do I make the output options provided by TExtraDevices (PDF, Excel, etc)
available for end user choice in ReportExplorer? The only options available
"Print to File" are those related to text files; the "Printer" options are
normal Windows selections.

Any suggestions would be appreciated.

Comments

  • edited May 2004

    You could create a custom printer dialog and register it with ReportBuilder
    to replace the default printer dialog. You could use the existing
    TppPrintDialog as a starting point (see RBuilder\Source\ppPDlg.pas). Save
    the unit down under a new name can change the class name to TmyPrintDialog.
    The registration for the dialog appears in the initialization section at the
    bottom.


    ------------------------------------------------------------
    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 preview dialog you could

    1. Create a new Preview dialog by renaming ReportBuilder's default preview
    dialog, then doing a SaveAs to save it under another unit name.

    The default dialog resides in RBuilder\Source\ppPrvDlg.pas and the form is
    called ppPreviewDialog. You should assign your form a unique name, for
    example, myPreviewDlg, 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 preview dialog inherits from an ancestor
    TppCustomPreviewDialog - 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(TppCustomPreviewer, TmyPreviewDlg);


    4. Add the new unit to your project and compile.

    Now your preview dialog should be automatically created and destroyed by
    ReportBuilder. The two page preview dialog in the
    RBuilder\Demos\Reports\Demo.dpro was created this same way. The only
    difference is the ppRegisterForm call is in then OnClick event of the button
    .




    --
    Tech Support mailto:support@digital-metaphors.com
    Digital Metaphors http://www.digital-metaphors.com



    --
    Nard Moseley
    Digital Metaphors Corporation
    www.digital-metaphors.com


    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited May 2004
    Thanks for the update.

    Tom
This discussion has been closed.