Tuesday, March 24, 2015

Performing Dexterity Help

I will continue my overview of providing online help in Dexterity. The title of this is a knock-off on the Business Portal installer stage where it tells us it is "Performing Help". Anyone know what that means in an installer?

Anyway in my previous post I spelled out the tools you will need for this.  I suggest using a sub-folder below your Dex development folder to contain the help files you will need.  Here is a list of the basic (text) files required to create and maintain a help system.
 
Note that if you install the Dexterity sample files the one entitled Develop contains an HTML help example.
 
Alias.h - This file contains the Dex internal name for the object along with (=) the HTML file name related to it.
 

 
HTMLFiles.txt - This file contains a list of all the HTML files referenced in the help system.
 

 
<map>.h - This file contains the mapping of the Dex internal name to the internal Dex HelpContextID number.  The format of the records in this file is #define <internal name> <help ID #>.  This file can be named however you'd like - I use a name similar to my enhancement.



The above files are referenced in a series of #include statements in the HTML Help Workshop.



It can be helpful to create help files from your Dex project by using File > Generate Help Files.  This creates files for Windows Help, which is not the same as HTML help.  This will create a MAP file that contains all the objects you created in your Dex project.  You will have to sift through this to find the components you want to reference in your help file but it's all there.

The Dex internal name I mention above takes the following form:

FRM_<form name>_WIN_<window name>

So if you have a form in your Dex project named MAIN and a window in this form named OPTIONS then the Dex internal name would be FRM_MAIN_WIN_OPTIONS.

There is, of course, help available in the HTML Help Workshop.  And you will need to review Chapter 39 of the Dexterity Integration Guide manual for details about how your Dex project needs to be configured to invoke the help file you create.