3 Replies Latest reply on Dec 6, 2007 11:26 AM by tripwire45

    Odd master and subprojects configuration

    tripwire45
      I've inherited a project that is put together rather oddly. I have been editing some of the topics here and there as requested, but was prompted to take a closer look at the overall project structure when I noticed that, after the master project was compiled, a large number of topics returned a "page cannot be displayed" error when I tried to open them (although oddly enough, I *can* open them in the browse sequence, just not when I click directly on the topic page).

      I traced it down to a subproject that had been merged into the master project at two different points. The first point was just below a "top-level" book in the TOC. The second place was under a "subbook" beneath a "top-level" book in the master project's TOC.

      The master project is called "Admin". I went to see which CHMs were in Admin in the !SSL! only to find that this folder is completely empty. All of the CHMs are in a folder called !CHMs! (normally, when you create a project, the CHM file is in \!SSL!\Microsoft_HTML_Help\). This is an odd configuration but it seems to work (more or less).

      I went to check each of the four subprojects (I can only find one other subproject that's merged into the master project). Let's call the subprojects A, B, C, and D. Subprojects A, C, and D are structured just the way you'd expect. Each subproject contains a single CHM fow that subproject in \!SSL!\Microsoft_HTML_Help\ so for example, subproject A's chm can be found at \!SSL!\Microsoft_HTML_Help\A.chm. The same for C and D. B is another matter.

      Here is the structure of subproject B's directory and relevant subdirectories:

      B folder
      !SSL! folder
      InfoSDK folder
      InfoSDK.chm
      Object folder
      Admin.chm
      Object.chm
      Microsoft_HTML_Help
      Admin.chm
      B.chm

      As you can see, instead of the !SSL! folder containing just the Microsoft_HTML_Help folder which contains the subproject's chm file, there are three folders in !SSL!, each containing one or more chm files. The really odd thing is that two of those folders contain the chm file from the master project (Admin.chm) and only one folder (Microsoft_HTML_Help) contains the chm for the B subproject.

      I thought perhaps that this subproject had another subproject nested beneath it but in looking at the TOC, I can't find any merged project links. The B subproject itself has a large number of folders that are heavily nested beneath each other, so it's directory structure is both complicated and extensive.

      Before anyone asks me to zip the entire thing up and send it out, the content is proprietary and confidential and I can't send it out into the open. I'm hoping someone can tell me based on my description, what is going on here.

      As far as the topics from the merged B subproject that wouldn't open when I compiled and ran the master project "Admin", I double-clicked the merged project link for B in the Admin TOC to open the Merged Project dialog box. I discovered that the HTML Help File pointed to the B.chm but the TOC file pointed to Admin.hhc. When I pointed the TOC file to B.hhc and recompiled the master project, everything opened fine.

      I have a sneaky suspicion though that I may have broken something in the process and that topics that should be available in the master when it's compiled are no longer available.

      I apologize for the length of this post and the level of confusion it's probably generating, but this is the only way I can think to describe the situation short of being able to actually show you what's going on.

      Any responses and ideas would be greatly appreciated. Thanks.

      -Trip
        • 1. Re: Odd master and subprojects configuration
          MergeThis Level 4
          The !SSL!/WhateverLayout folders are only the default folders that RH oh, so helpfully creates for every layout you design. I suggest that you break free from the !SSL! trap, by setting up new layouts for these projects and generating them all to a single folder just off the local machine root, say under C:\RH_Admin.

          This layout structure not only keeps the structure clean, but virtually eliminates the possibility of over-long link paths.


          Good luck,
          Leon
          • 2. Odd master and subprojects configuration
            tripwire45 Level 1
            quote:

            Originally posted by: MergeThis
            The !SSL!/WhateverLayout folders are only the default folders that RH oh, so helpfully creates for every layout you design. I suggest that you break free from the !SSL! trap, by setting up new layouts for these projects and generating them all to a single folder just off the local machine root, say under C:\RH_Admin.

            This layout structure not only keeps the structure clean, but virtually eliminates the possibility of over-long link paths.

            Which explains why the chm files for the Admin master project are in !CHM! rather than !SSL!. Not being a RoboHTML guru, I assumed that !SSL! was the required directory for all chm files but as you explain it, they cah be contained in any folder as long as you select that particular directory as the output folder containing the required chm file for the project. I will certainly explore your suggestion in future projects I develop but in terms of this older set of projects, I'd just as soon leave well enough alone for the time being. There's a rather large product base that uses this set of help files and if I broke it, the consequences wouldn't be pretty.

            I still dont get why my predecessor placed the Admin.chm file (which is the chm file for the master project) in the directory structure of a subproject the way I've described. I can't see any reason for it and am not sure why in creating a merge link, she referenced the chm of the subproject but pointed the TOC to the Admin.hhc. As far as I can tell, you don't need to do that in order to allow the subproject books and topics to be displayed in the master project's TOC after the merge is complete. Any ideas?

            EDIT: Now this is interesting. I just had a look at the properties of a merge project link I created and while I can select the particular chm file in the HTML Help File drop down menu, the TOC File selection is fixed foe the same project's .hhc file. I wonder if the reason for including the admin.chm file in the !SSL! folder of subproject B with the B.chm file was to allow my predecessor to be able to select between the Admin.hhc and B.hhc files for the TOC File. If you choose one project's chm file for the HTML Help File and another project's hhc file for the TOC file, what happens (given that in my experience, it makes all of the subproject's topics unable to be opened when merged and compiled with the master project)?
            • 3. Re: Odd master and subprojects configuration
              tripwire45 Level 1
              Ok, I figured out why she created the odd structure and CHM file placement that she did. Actually, I was trying to figure out this problem when it dawned on me that I'd stumbled onto the solution of the problem which spawned this thread. Here's the answer:

              http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=65&catid=449&threadid =1320632&enterthread=y

              To merge subprojects into other subprojects and then have those successfully merge into a master, the !SSL! folder in any given project must contain all of the CHMs of anything merged into it. At the master project level, the master's !SSL! folder must contain all of the CHMs from projects directly merged into the master *and* merged into subprojects (or subsubprojects) that eventually merge into the master. That's why I saw CHM files where I didn't expect to see them. My predecessor made one very complex set of help files.

              As for this thread, tha-tha-that's all, folks. :D