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

Installing End-User help?

edited November 2003 in End User
The end-user help file called LearnReportBuilder.hlp is
great for my application. It works fine when I run
ReportBuilder.exe under learn Report Builder, but when I
install the 3 help files to my own application, I get no
help when I click on help in the Explorer, and I get the
full blown RepBuilder help when I select help in the designer.

I tried many thinbgs to "install" the proper help file to my
own application and form, but am very very stuck. Obviously
there is a way to do this - please point me in some direction!!!

TIA,
Scott Stalheim

Comments

  • edited November 2003

    1. To customize the help menu for the report explorer you need to provide
    some custom code to handle the Help menu item. You can in one of the
    following ways:

    a. Use the ReportExplrorer.OnCreate event to access the
    ReportExplorer.Form.Menu property. Then iterate thru the menu items array
    and override the help menu Item.OnClick event.

    Note: the default help code is located in ppExpFrm.pas. The method is
    TppReportExplorerForm.mniHelpTopicsClick.


    b. Use the ReportExplorer.MergeMenu feature to override the help menu. See
    the online help for more info.
    c. Implement a custom report explorer form. See
    RBuilder\Tutorials\Complete\II. Applications\04. End-User with Custom
    Explorer

    2. To customize the help for the TppDesigner you can use the OnHelp event:

    --------------------------------------
    Customizing the Designer's Help Menu
    --------------------------------------

    The TppDesigner.OnHelp event can be used to control what happens when the
    end-user requests help.


    The following is from the RBuilder.hlp file topic for TppDesigner.OnHelp:


    Declaration
    -----------

    property OnHelp: TppHelpEvent = procedure(Sender: TObject; var aHelpFile,
    aKeyphrase: String; var aCallHelp: Boolean) of object;

    Description
    -----------

    Write an OnHelp event handler to perform special processing when the user
    requests help. The OnHelp event is triggered when the user makes a selection
    and clicks 'F1' or access the Help | Help Topics menu option.

    The aHelpFile parameter can take a file name or full path and file name. If
    the aCallHelp parameter is set to False, WinHelp will not be called.




    --
    Nard Moseley
    Digital Metaphors
    http://www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited November 2003
    Thanks for the help. I was able to link the supplied help
    into my own form, and into the designer, but so far no
    luck on linking to Report Explorer. I have tried the method
    (a) and (b) you sent as follows:

    a. "Use the ReportExplrorer.OnCreate event to access the
    ReportExplorer.Form.Menu property. Then iterate thru the
    menu items array and override the help menu Item.OnClick event.
    Note: the default help code is located in ppExpFrm.pas. The
    method is TppReportExplorerForm.mniHelpTopicsClick. "

    - I tried changing the actual code in ppExpFrm.pas (probably
    not a good idea for future maintenance!), and nothing
    changed, I suppose because I would also need to re-install
    ReportBuilder into Delphi.

    - Also I tried over-riding the method, but I am not familiar
    with this procedure. In a form of my own, I added
    ppExpFrm.pas to the uses clause, and then entered a new method:
    procedure mniHelpTopicsClick(Sender: TObject); override;
    I get the compiler error message:
    "method mniHelpTopicsClick not found in base class"

    As for method (b) you had:
    "Use the ReportExplorer.MergeMenu feature to override the
    help menu. See the online help for more info."

    I find no example, and not enough help to make any progress.
    It seems that MergeMenu would be a good option if I
    understood it!

    Any additional help much appreciated!

    Scott Stalheim
    stalheim@tds.net
  • edited November 2003

    1. If you modify the RB source, you have to modify your the Delphi library
    path to RBuilder\Source OR copy the unit to RBuilder\Lib. An example of
    cusomizing the the custom report explorer form. See
    RBuilder\Tutorials\Complete\II. Applications\04. End-User with Custom
    Explorer

    2. The merge menu is documented in the RBuilder.hlp. To replace the Help
    menu:

    a. Add a TMainMenu component to the end-user form. Create a MenuItem, set
    the Caption to 'Help' and set the GroupIndex to 30. Add any subitems as
    desired. Set the TppReportExplorer.MergeMenu property to point to the
    TMainMenu component. Run the application.





    --
    Nard Moseley
    Digital Metaphors
    http://www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.