Help() Statement Not Opening Topic

well kinda. Using C8 Legacy.

I have a .chm help file that I built, have added the global help template to my app, have entered in topics properties for the help buttons, but the app refuses to open them to the proper topic. In fact it just opens the help file to the first topic in the .chm file (Introduction), and positions the help index pointing to the top of the listing.

OK, to troubleshoot, I built a single window app that has 2 buttons to call help topics. I figured the build compile time would just be so much quicker. I am calling the help file with code and it still does not work properly, although a little closer to how it should work. Here’s the code:

HELP('Scheduler.chm','Comments')

It opens the .chm to the first page in the help file (an Introduction page) and positions the pointer in the help file index to the proper Topic, but still requires the user to click on the DISPLAY button at the bottom of the Index display in order to display the correct help page.

I checked with the Help & Manual (4) people and they point me back to C8.

I am running out of ideas. Do you all have any?

========================================
Here’s my conversation with H&M:
Hi Mark,

Thank you for your mail!

You are using a call that opens the CHM file at the keyword index instead of the table of contents. You can see the native commands listed in reference section of the help for HTML Help Workshop:

image.png

However, it’s likely that these commands are wrapped in other ones in the programming system you are using to call the CHM file. You need to check your Clarion API documentation to see how to call the topic with the TOC instead of the index.

Thank you for choosing Help & Manual and have a nice weekend!

Best regards,
Tim Green (EC Software Documentation & Support)

Help+Manual 9 and Premium Pack 5 for Help & Manual 9, 8 and 7 now available. See here for more information.

On Sat, Aug 12, 2023 at 5:10 AM <[email protected]> wrote:

H&M4
I built my .chm help file with topics identified, have specified the help file with my db software (Clarion 8). In my app, when the Help button gets pressed, the help file opens, the topic is selected, but NOT displayed. It requires the DISPLAY button at the bottom of the Index listing to be pressed in order to display the called topic.

Any ideas??
========================================
thanks

Mark

Ironically the answer is in the Clarion Help files :slight_smile:

HELP(helpfile,help-id)

The help-id may contain a Help keyword. This is a keyword that is displayed in the Help Search dialog. When the user presses F1, if only one topic in the help file specifies this keyword, the help file is opened at that topic; if more than one topic specifies the keyword, the search dialog is opened for the user.

A “context string” is identified by a leading tilde (~) in the help-id, followed by a unique identifier associated with exactly one help topic. If the tilde is missing, the help-id is assumed to be a help keyword. When the user presses F1, the help file is opened at the specific topic associated with that “context string.”

So in this case you appear to be missing the leading tilde character ie it should be…

HELP(‘Scheduler.chm’,‘~Comments’)

Without that opening ~ character the help-id is treated as a keyword and filled into the Search box (as you’ve discovered)

1 Like

Thanks for the reply Graham. I had read the help and experimented in my small app with the points made in the help (prior to reaching out to Clarionhub.com).

I have a Topic named ‘Comments’ and it is the only topic with ‘Comments’ as a keyword. I used a tilde and the result was only worse. Here’s the code:

HELP(,‘~Comments’)

Here’s what it returned:

I just looked at our code (which I didn’t write - but I know it works).

Our Help() references look like this with the CHM File Name 1st and the Topic 2nd. The Topic has a leading Tilde and ‘.htm’ suffix:

HELP(GLO:HelpFilename, '~asceseismic.htm')

Mark

2 Likes

Mark - thank you!!! The .htm did the trick - it now works.

Mark

Be aware that CHM help cannot typically be opened on a Network drive … unless a security hack is made to the Registry … a bad idea IMO.

The easy workaround is to Copy your CHM file to each User’s Temp folder and open it from there.

1 Like