Copy link to clipboard
Copied
This is a solution to a problem I encountered when converting a project from RH7 to RH8. I couldn't find this on the forum, so I decided to post this, just in case someone else has the issue.
After upgrading to RH8, I opened my RH7 file and upgraded it, which caused it to crash, but then it opened fine. I immediately generated the help file to see how different it might look. I discovered that my conditional builds no longer worked, and that topics were included in the file that shouldn't be.
I have one file that produces two versions of help. Lets call them A and B. In RH7, I used conditional tags to mark topics and text as either part of A, B or both. I then created a conditional build expression for each that included only topics with A or B, respectively, or both A and B. I've been told that you are supposed to exclude items in conditional build expressions, but for me that didn't work in RH7.
In RH8, I discovered that in order for the conditional build expressions to work, I have to use the exclusion option. This means that I have had to go through all of the topics that included both A and B tags and remove them. This isn't so bad, really. The tough part was the conditional text within the topics. I have several topics that have both conditional text for A and B. When generated, the topic showed both. To solve this issue, I had to open each topic, make one small change (like putting in a space and then deleting it) and save the topic. After regenerating the two versions of the files, the conditional text appeared correctly.
One other interesting issue. I have some expanded text in the topics, and when initially generated, there was a space missing just after the expanded text. Oddly enough, the solution described above solved that issue as well.
I don't know why it works, but it works. Hope this helps somebody!
Kari
Copy link to clipboard
Copied
Kari
Glad you have got it working but I think it could have been easier. If you had reversed the CBT names by renaming them and then amended your build expressions to NOT whatever, I think that would have done it for you.
See www.grainge.org for RoboHelp and Authoring tips
Copy link to clipboard
Copied
So, if I had built the expressions to say "NOT A" when I wanted B, and "NOT B" when I wanted A?
Or do you mean if I'd written them to say "A Not B"? I did try that, but it didn't seem to work. At this point I'm not sure if that was because I hadn't opened and saved each topic that included conditional text, or if the expression itself.
Copy link to clipboard
Copied
You just cover what you do NOT want.
So if you had A, B, C and untagged you would use
NOT A
NOT B
NOT C
NOT A and NOT B
and so on.
See www.grainge.org for RoboHelp and Authoring tips
Copy link to clipboard
Copied
I reread your initial response, Peter, and determined that I had basically done what you were suggesting. I changed the conditional build expressions to include NOT, and removed the tags from any topics that included both A and B, leaving the tags that included one or the other. I have since discovered that my original expression was working and the real issue was with the conditional text within the topic.
For some reason, Robohelp isn't recognizing the conditional text when the file is generated, and is including B text in an A generated file. The only solution I could find was to open the topic, make a small edit, save the topic, and regenerate the file. If you have an easier solution I'd love to hear it!
Copy link to clipboard
Copied
Sorry but no.
See www.grainge.org for RoboHelp and Authoring tips
Copy link to clipboard
Copied
I renamed A to B and B to A, then added NOT to the expression.
Like I had explained, this doesn't work because I have some topics that have both A and B tags assigned to them. So your simple solution doesn't work without a lot of additional work. It also doesn't solve the problem of the conditional text.
Copy link to clipboard
Copied
If you use NOT A any content with B will still appear.
If you use NOT B any content with A will still appear.
If you use NOT A and NOT B, all tagged content will be excluded.
What is it that is appearing that should not?
See www.grainge.org for RoboHelp and Authoring tips
Copy link to clipboard
Copied
It's not what IS appearing, its what ISN'T appearing.
Topic 1 - tag A
Topic 2 - tag B
Topic 3 - tag A, B
Conditional expression - include A shows both topic 1 and topic 3
This worked fine in 7, initially didn't work in 8, but seems to be working OK now.
If I understand you correctly, what you are suggesting is that I change this to:
Topic 1 - tag B (by renaming)
Topic 2 - tag A (by renaming)
Topic 3 - tag B, A
Conditional expression - exclude A, shows topic 1 only. Since topic 3 has both A and B assigned to it, it is excluded. I could only use this option if I remove all tags from topics that include both A and B.
Again, the big issue is more about the conditional text, which is included in the topic matter what the conditional build expression says, and isn't working correctly until I open, edit, save and close each topic that includes conditional text.
Copy link to clipboard
Copied
No I don't think he was saying that at all - with your first example, the (include A) condition shows topics 1 & 3 {RH7 conditioning}; that gets you (NOT B) in RH8. (NOT B) will include topic 1, exclude topic 2, and include 3 (but not any of the B text).
If you're having to open/edit/save each conditional topic, I would think that there's something wrong with the topics. Have you had Support have a look at them?
Copy link to clipboard
Copied
Maybe this link will help explain how conditional build tags work?
Read the RoboColum(n) for a tips, tricks and musings on the Technical Communication Suite products.
Copy link to clipboard
Copied
Let's try again.
First forget thinking in INCLUDE mode. Everything will be included unless you exclude it.
Example.
Topic 1 has tag A applied to the topic
Topic 2 has tag B applied to the topic
Topic 3 has tag A applied to some of the content (let's say to the word Redrabbit) but not the topic itself.
Topic 4 has the tag A applied to the word Redrabbit and tag B to the word Greenrabbit but no tag on the topic itself.
This is how it should work.
Topic | Topic tag | Text tagged | Expression Not A | Expression Not B | Expression Not A and Not B Header 6 |
---|---|---|---|---|---|
1 | A | Topic will be excluded | Topic be in output | Topic will be excluded | |
2 | B | Topic be in output | Topic will be excluded | Topic will be excluded | |
3 | None | Redrabbit is tagged A | Topic will be in output but the word Redrabbit will be excluded | Whole topic will be in output including the word Redrabbit. | Topic will be in the output but the words Redrabbit and Greenrabbit will be excluded. |
4 | None | Redrabbit is tagged A and Greenrabbit is tagged B | Topic will be in output but the word Redrabbit will be excluded | Topic will be in the output but the word Greenrabbit will be excluded. | Topic will be in the output but the words Redrabbit and Greenrabbit will be excluded. |
Below is the expression dialog.
Here I have selected from Available Tags and put them in Exclude.
Click Advanced and you will see how RH writes the expression.
Written like that, does it now work for you?
See www.grainge.org for RoboHelp and Authoring tips
Copy link to clipboard
Copied
Thanks, all. Really, I'm good. It's working like it is supposed to. I was just trying to provide a solution to anyone else out there who encountered my conditional text issue.