Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Context-Sensitive Help -- configuring app side

Guest
Mar 08, 2010 Mar 08, 2010


I am a senior technical writer working with a developer trying to configure Context Sensitive Help where output RoboHelp files are in FlashHelp format. The software application for the stated help system is for a large federal agency. The interfacing application is a Sharepoint environment using .Net tools/code. Can somebody provide detailed written information as to how to set up the interface on the developer side? I have already configured the RoboHelp side using the Context Sensitive Help feature where the following items are assigned for each context sensitive help instance: Map ID, Map Number, Help Topic (html file). We need to know the format for a string containing the Map ID and Map Number (on the .Net side) that will be sent to the FlashHelp home page (index.html, in this configuration) so the help system will call the help topic associated with the requested Map ID and Map Number. Obviously this is a programmer-level issue, but it’s a straight-forward question that is not clearly addressed in RoboHelp’s online help. So if somebody could supply a written description that can be forwarded to the stated developer, that would be great.


Please note: I'm using RoboHelp 6, an older version, but the stated interface issue is likely unchanged.


Thanks.


David Sharp

Silver Spring, MD
USA

3.5K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 08, 2010 Mar 08, 2010

What I know about Sharepoint and OLH is covered in http://www.grainge.org/pages/authoring/sharepoint/sharepoint.htm

As you are talking about FlashHelp, I am not clear why you have also asked the question in the WebHelp forum. We do ask that questions are not duplicated if only because it leads to split and messy answers. I will add a link in the other thread and then lock it.

UPDATE. I have deleted the other post as I found it had been attached to another thread, the rest of which should remain.

It is also recommended that email addresses are not included in posts, unless you want all sorts of spam offering various services of a personal nature. I can edit your posts and remove that if you wish.


See www.grainge.org for RoboHelp and Authoring tips

@petergrainge

Help others by clicking Correct Answer if the question is answered. Found the answer elsewhere? Share it here. "Upvote" is for useful posts.
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Mar 08, 2010 Mar 08, 2010

"As you are talking about FlashHelp, I am not clear why you have also asked the question in the WebHelp forum."

My apologies. A duplicate message was posted to the WebHelp forum by accident. If you have the ability to remove it, feel free to do so.

That stated, I am definitely talking about FlashHelp. I looked at the cited link (below) but did not see anything about .net tools.

http://www.grainge.org/pages/authoring/sharepoint/sharepoint.htm

The SharePoint article has lots of information, but the programmer I'm dealing with indicated that he needs something much more basic. He seems to think each CSH instance on the app side will send a string to the help system (FlashHelp, that is) when the home page is clicked (our home page file is called "index.htm".) The question is this:

** What is the format we use for the CSH call string when coding in .net, in a Sharepoint environment, using RoboHelp with FlashHelp output files? **

MORE BACKGROUND INFO:

We (the programmer and myself) have jointly defined the Map ID and Map Number for each instance where CSH is needed on the application side. With that information, I used the CSH feature on the RoboHelp source side (the project, that is) and created a mapping file. Each record within the mapping file represents a unique instance of CSH. (In other words, each CSH help icon on the app side is given a unique ID which is entered in the mapping file on the RoboHelp side.) Within each mapping file record (still on the RoboHelp source side), I (the writer) assign a help topic to the associated Map ID and Map Number that we already defined. As a last step in preparing the help file with CSH, I compile the RoboHelp project and select the output format as FlashHelp. In basic terms, everything works great, but there's one problem. The programmer has no idea how to call the desired help topics other than to create hot links to each topic file that I associated with the Map ID and Map Number. By creating hot links, he is bypassing the CSH feature provided by RoboHelp. Long story short -- We're making CSH work, but we're not adhering RoboHelp best practices. We could make it work with hot links without using RoboHelp's CSH feature at all. So it seems pretty sloppy to me, but we may have to go that route because nobody seems to know how to configure CSH properly on the app side for the stated environment (.net and Sharepoint, that is).

I'm not a programmer, but it seems like we may need somebody with knowledge of .net to provide guidance for this problem.

Thanks.

Dave Sharp

PS. Feel free to remove my e-mail from the original message if you think it is not needed.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 08, 2010 Mar 08, 2010

Dave

I removed your email address. It's not a question of need but of whether you want spam.

A key point of my article is that if you want CSH, you have to follow the link I have provided and it ain't easy. It's also way to technical for me.

There are various ways of calling help from an application and those are set out on my site under Calling WebHelp. They should work for FlashHelp too. From Sharepoint though it's a whole different ball game and the best I can do is suggest you follow the link at the end of the article.


See www.grainge.org for RoboHelp and Authoring tips

@petergrainge

Help others by clicking Correct Answer if the question is answered. Found the answer elsewhere? Share it here. "Upvote" is for useful posts.
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Mar 09, 2010 Mar 09, 2010

Thanks for the info. But I have a couple more questions because my developers are still confused.

1. Does CSH no longer work in RoboHelp version 6. That's what I have and management here refuses to upgrade. So if that's the case, there's no point in moving further on this issue.

2. In the article/link you provided, "Calling Webhelp", there was no mention of Map Numbers, which is required in RoboHelp 6 as part of the CSH feature. Are Map Numbers not used in later versions of RoboHelp?

In general, it seems like the information you supplied was too extensive for our needs. We just need to know how to wire to Map Numbers and Map IDs, which is part of RoboHelp 6's basic CSH. If nobody knows how to make this function work properly, it will be easier for me not to use RoboHelp's CSH function anymore. On the next help version, I can just give the developers a list of help topic filenames, and they can link directly to them.

In other words, it seems like the CSH functionality in RoboHelp is obsolete and nobody uses it anymore.

Comments?

David Sharp

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 09, 2010 Mar 09, 2010

Context sensitive help from an application works in all versions of RH and is covered in this topic.

http://www.grainge.org/pages/authoring/calling_webhelp/using_map_ids.htm

Map IDs are still very much in use from an application.

If you are running an application within Sharepoint, then that application should be able to call its help using Map IDs.

If you want other Sharepoint screens that you are creating to have help, then that is another matter and that is what my page is about.

Does that clarify things?


See www.grainge.org for RoboHelp and Authoring tips

@petergrainge

Help others by clicking Correct Answer if the question is answered. Found the answer elsewhere? Share it here. "Upvote" is for useful posts.
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Mar 09, 2010 Mar 09, 2010

“Does that clarify things?”

Not really. I specifically asked about MAP NUMBERS, not Map IDs. No disrespect intended, but you have not answered the very specific question about Map Numbers, and the cited article did not mention them either. For the record, this was my question about Map Numbers:

“In the article/link you provided, ‘Calling Webhelp’, there was no mention of Map Numbers, which is required in RoboHelp 6 as part of the CSH feature. Are Map Numbers not used in later versions of RoboHelp?”

And this was your response:

“Map IDs are still very much in use from an application.”

Again, not disrespect intended, but a Map ID is a different RoboHelp field than a Map Number, and I did not ask about Map IDs. The question was about MAP NUMBERS. (fyi) A Map Number is a unique number assigned to a CSH instance. The Map ID is a text description of that instance. So far, I have seen references to Map IDs, but nothing about Map Numbers.

In addition, I am using version 6 of RoboHelp (a fact that was repeated several times), but the cited article requires version 7 or above. (My developers have already jumped all over that as an excuse to do nothing.) The article shows that RoboHelp generates a Javascript file (RoboHelp_CSH.js) that version 6 apparently does not generate. So we are at an impasse. Would it be possible to direct me to an Adobe technical support person to provide guidance? If possible, I would like to open a trouble ticket. Although I am using an older version, I seriously doubt that it is totally obsolete for this particular feature.

Thanks.

David Sharp

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 09, 2010 Mar 09, 2010

OK I'll leave you with anyone else who wants to assist. Map IDs and Map Numbers are all part of the same way of calling help as far as I am aware, mostly I work using URLs hence my limited knowledge. I've done my best to assist by pointing you to topics that I thought would assist, clearly not.

This is a user to user forum, I am not an Adobe employee. Technical Support is available from Adobe's site under Support. I think you will find that RoboHelp 6 is no longer supported but try anyway.


See www.grainge.org for RoboHelp and Authoring tips

@petergrainge

Help others by clicking Correct Answer if the question is answered. Found the answer elsewhere? Share it here. "Upvote" is for useful posts.
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Valorous Hero ,
Mar 09, 2010 Mar 09, 2010

Hi there

Here is a copy/paste from the RoboHelp 7 help. Not sure if the same information exists in RoboHelp 6, but I might guess it does. I do have RoboHelp 6 installed, but it's only installed in my XP boot and for now I'm booted into Vista for some other work I'm performing. Dems the breaks I suppose.

Here is what the help topic says:

=====> Begin Copy and Paste <=====

Fundamentals of map IDs and files

Map IDs and map files enable the help file to work.

Map IDs

A map ID is a string in a map file that pairs a map number and topic ID. The map number follows the topic ID in a string that resembles this in the map file:

#define ID_SetupScreen 101

ID_SetupScreen is the topic ID.

101 is the map number.

ID_SetupScreen 101 represents the Map ID.

You can create the map file and map IDs. You might need to assign map numbers or prefixes to the map IDs. If you receive map files from your developer, you must assign map IDs from the map file. If you create the map file, you must also auto-generate or create the map IDs.

Map ID icons

Blue icons  indicate map IDs match topics.

Yellow icons  indicate map IDs do not match any topics.

Locked icons  (blue and yellow) indicate that the map ID is in a map file that is locked. It cannot be assigned or unassigned.

Map files

A map file is a text file that consists of topic IDs and map numbers. Map files use the extensions .h, .hh, and .hm. You associate the map IDs the map files with topics. A project can include multiple map files. You can export map files to another location, and you can import a map into a sub-folder by right-clicking on the folder and selecting Import Map File.

=====> End Copy and Paste <=====

The map file may be created by you or the developer.  It is a simple ASCII text file you may create using Windows Notepad if you wish.

What must happen on the developer's end is a bit of a mystery to me and it varies depending on the application being used by the developer. For example, if they are using C+ the call is different than it is if they are using dotnet. But as I understand it, the developer codes the call in a specific manner to open the help.

Perhaps the link below will help. I used Google to locate it.

Click here to view

Cheers... Rick

Helpful and Handy Links

RoboHelp Wish Form/Bug Reporting Form

Begin learning RoboHelp HTML 7 or 8 within the day - $24.95!

Adobe Certified RoboHelp HTML Training

SorcerStone Blog

RoboHelp eBooks

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Mar 09, 2010 Mar 09, 2010

Thanks, Rick. The example mapping string you provided -- #define ID_SetupScreen 101 -- was the info I was requesting.

I forwarded your entire message to my developers and project manager. It seems like it might work (if they take the time to read it, that is :-))

Thanks again!

(I'll shutup now :-))

Dave

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Mar 09, 2010 Mar 09, 2010

(As I write this, I see Rick may have answered your question. But there may be a few new tidbits I can add)

First, let me note that RoboHelp (including v6) offers CSH APIs for various languages (C++, Java, JavaScript, C# .NET, etc.) However, I'm not sure .NET was included in RH 6, but I think so.

The most commonly used CSH API support file is for JavaScript and the file is RoboHelp_CSH.js. This file includes ready-made JavaScript functions that the developer can use to call help topics. There seems to be a bit of confusion in your last post. RoboHelp does not "generate" this file. Rather it is already included on your PC along this path:
C:\Program Files\Adobe\RoboHelp 6.0\CSH API


The idea is that you would copy this RoboHelp_CSH.js and give it to your developer who will use an include statement in his application so that he can call topics using those JS functions. I have an article that describes this on Adobe's site

http://www.adobe.com/devnet/robohelp/articles/context_help.html

It is based on the old RHX5 but the concepts of using the API have not changed.

As I recall, the online help even for RH 6 included a section under Context Sensitive Help called "Information for Developers". The RH 8 version of this can be found here:

http://help.adobe.com/en_US/RoboHelp/8.0/RoboHTML/WSFE586D66-E937-45bd-9F7B-3425A0D02B42.html

(Best to look at the same topic in your online help for v6)


Now for the shocker: I find that programmer/developers often do not use these APIs! Being mavericky types they often "roll their own" since calling a topic in WebHelp or FlashHelp is really just calling a URL which is pretty basic (as noted in Peter's fine topic). So, in this scenario, Map IDs, Map #s and Map files are no longer necessary!


That said, the APIs that are offered do work (even for the old v6) and can be helpful to developers who find the ready-made code convenient. It is particularly useful if an author wants to define a particular window size and placement on the screen for the topic to appear in.

There has often been confusion about the jargon for Map IDs (actually they were originally called Context IDs or Topic IDs which are alphanumeric, e.g., IDH_Some_Topic) and Map #s (strictly numeric). To further confuse, some developers will use a Map # and decided not to use the Map ID, so just because RoboHelp creates both, does not mean the developer will use them. It's there if it suits their purpose.

Thanks

john

John Daigle
Adobe Certified RoboHelp and Captivate Instructor
Evergreen, Colorado
http://www.showmethedemo.com

John Daigle
Adobe Certified RoboHelp and Captivate Instructor
Newport, Oregon
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 09, 2010 Mar 09, 2010

You said "So far, I have seen references to Map IDs, but nothing about Map Numbers."

I just looked at John's article (one of the links on the page my link took you to). There is a section

Creating a New Map File and Assigning Numbers to Help Topics

Open the virtual Context-Sensitive Help folder and then open the Map Files   folder (see Figure 8). You will see that BSSCDefault.h is the standard map   file that comes with RoboHelp, although you could create your own or import   one from a developer.

Opening the Map Files folder reveals the BSSCDefault.h map file.

Figure 8. Map Files folder with the default   BSSCDefault.h map file

Double-click All Map IDs to open the Edit Map IDs dialog box. The Map File   pop-up menu showing <Project Map File> refers to the BSSCDefault.h map   file.

Select topics in the right pane of the dialog box and click the Auto-Map button   to assign a number and context ID to each topic required:

****************************************

John's article was based on X5 which preceded RH6 and not on RH7.

A map id may be a different field to the map number but the two are both part of the same method of calling help as you pointed out.

My thinking was that your problem was with this method of calling help in the Sharepoint environment rather than just the method of calling CSH using Map IDs / Map numbers (different fields but the same method of calling help).

Thanks John and Rick for coming in on this.


See www.grainge.org for RoboHelp and Authoring tips

@petergrainge

Help others by clicking Correct Answer if the question is answered. Found the answer elsewhere? Share it here. "Upvote" is for useful posts.
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Mar 10, 2010 Mar 10, 2010
LATEST

John,

Thank-you so much for your guidance yesterday! I found the JavaScript API in the CSH API location that you provided (on my PC). There was a .Net API at the same location (and this is a .net app that I'm creating help for). So I forwarded your message and the API's to the point of contact on my development team and the project manager and tech lead. In addition, I just briefed the entire development team this morning (in our daily standup) about the key points you raised (API's come with RoboHelp; RH6 will work, so we don't need an upgrade, etc). In short, I've given the developers plenty to study so they don't keep looking at me with an empty gaze every time somebody mentions CSH and wants to know the status.

(fyi -- The RoboHelp configuration portion was finished and handed off to the developers five weeks ago. I even gave the tech lead a demo of how I configured things in RoboHelp, and he nodded that it made sense, then went back into his code-induced stupor. That stated, they have been completely non-responsive and have done nothing since, although the CSH feature for this particular app was *their* mandate, not the client's, not management's. The things we writers must endure :-))

With that, I am marking this thread YES (question was answered).

Thanks everybody who responded.


Dave Sharp

Senior Tech Writer

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
RoboHelp Documentation
Download Adobe RoboHelp