Copy link to clipboard
Copied
Hi there,
we got a new standard to comply with. The layout looks like
I achieved that with a change in the Structured FM template, in Column Layout with Room for Side Heads checked and width of 40 mm. I also managed to have the images fit in the 125 mm working area of the layout.
I have problem adjusting the tables, and this is a problem because one of my documents have a lot of tables. It looks as shown below.
I tried a lot of changes:
1. in my structural FM template ChapterOutputTpl, I used Resize Table and the Table Designer (as per https://community.adobe.com/t5/framemaker-discussions/framemaker-dita-tables/m-p/10953831 ), and the table looks correct.
I made sure that the updated template is imported in the DITA Template, in Publish Settings and saved before publishing.
2. To avoid the width not getting stored on saving and reopening, as per https://community.adobe.com/t5/framemaker-discussions/framemaker-dita-tables/m-p/10953831,
I also made change to ForceTGroupAlignmentToLeft=0 in my in my ditafm.ini at location <FMInstallationPath>\fminit\ditafm. I looks as shown
;Aligns table to the left
ForceTGroupAlignmentToLeft=0
3. In the xml file, I made changes in colwidth to be fixed:
</tgroup></table><table frame="all" colsep="1" rowsep="1"
product="EP7200"><title>Upgrade Paths</title>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="1.64in"/>
<colspec colnum="2" colname="2" colwidth="1.64in"/>
<colspec colnum="3" colname="3" colwidth="1.64in"/>
The width is as needed:
However, after saving and reopening, the width still fits to the page (see below).
<table frame="all" colsep="1" rowsep="1"
product="EP7200"><title>Upgrade Paths</title>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="33*"/>
<colspec colnum="2" colname="2" colwidth="33*"/>
<colspec colnum="3" colname="3" colwidth="33*"/>
<thead>
I am using <table> </table> not <simple table>.
My Structural FM version is 17.04.628.
Have you experienced not able to change the width of a table in Structural FM?
Any ideas are welcome!
Thanks a lot!
Zornitza Doneva
1 Correct answer
OK, I understand the issue now. You need to modify the Read/Write rules for the topic types that you are using. For example, for tasks, you can see that I have line 21 commented out. Note that you need admin rights to make changes to those files because they are below the Program Files folder.
Copy link to clipboard
Copied
Hi,
I do not use Structure. Therefore I do not know, if my comment applies.
Have you adapted the various table formats in your template and saved all of them?
Then FrameMaker should use this table format with the adapted column widths.
Best regards, Winfried
Copy link to clipboard
Copied
Hi Zornita,
Please post the entire table XML. Thank you.
Rick
Copy link to clipboard
Copied
Hi Rick,
Thanks for your response.
The xml file with the table is as follows:
<task id="id205ODK040HS"
xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">
<title>Command Line: Upgrading the
<keyword keyref="product_name"></keyword> using
a USB
</title>
<shortdesc>This section will document how to upgrade the firmware
on the
<keyword keyref="product_name"></keyword>. This process
takes approximately 5 minutes to execute.
</shortdesc>
<taskbody>
<prereq>
<p>To perform the tasks in this section, you will
have already logged into the
<keyword keyref="product_name"></keyword> via
an
<term keyref="SSH_dterm">SSH</term> connection or through the
console port. For all upgrades it is recommended that user’s backup
their current running configuration prior to commencing the upgrade
process.
<indexterm></indexterm>
</p>
<p>
<b>Valid Upgrade Paths</b>
<table
frame="all" colsep="1" rowsep="1">
<title></title>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="1.64in"/>
<colspec colnum="2" colname="2" colwidth="1.64in"/>
<colspec colnum="3" colname="3" colwidth="1.64in"/>
<thead>
<row rowsep="1">
<entry colname="1"></entry>
<entry colname="2"></entry>
<entry colname="3"></entry>
</row>
</thead>
<tbody valign="middle">
<row rowsep="0">
<entry colname="1"></entry>
<entry colname="2"></entry>
</row>
</tbody>
</tgroup>
</table>
</p>
</prereq>
</taskbody>
</task>
I am publishing it as a part of a ditamap which I can also add to a post.
regards,
Zornitza Doneva
Copy link to clipboard
Copied
It is honoring the column widths for me, but you only have two entry elements in the body row so I had to add a third entry to make it valid.
Copy link to clipboard
Copied
Hi again,
I agree. I fixed that.
Now the full code is:
<task id="id205ODK040HS"
xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">
<title>Command Line: Upgrading the
<keyword keyref="product_name"></keyword> using
a USB
</title>
<shortdesc>This section will document how to upgrade the firmware
on the
<keyword keyref="product_name"></keyword>. This process
takes approximately 5 minutes to execute.
</shortdesc>
<taskbody>
<prereq>
<p>To perform the tasks in this section, you will
have already logged into the
<keyword keyref="product_name"></keyword> via
an
<term keyref="SSH_dterm">SSH</term> connection or through the
console port. For all upgrades it is recommended that user’s backup
their current running configuration prior to commencing the upgrade
process.
<indexterm></indexterm>
</p>
<p>
<b>Valid Upgrade Paths</b>
<table
frame="all" colsep="1" rowsep="1">
<title></title>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="1.64in"/>
<colspec colnum="2" colname="2" colwidth="1.64in"/>
<colspec colnum="3" colname="3" colwidth="1.64in"/>
<thead>
<row rowsep="1">
<entry colname="1"></entry>
<entry colname="2"></entry>
<entry colname="3"></entry>
</row>
</thead>
<tbody valign="middle">
<row rowsep="0">
<entry colname="1"></entry>
<entry colname="2"></entry>
<entry colname="3"></entry>
</row>
</tbody>
</tgroup>
</table>
</p>
</prereq>
</taskbody>
</task>
The file in FM shows the table as I want it.
However, after saving I have for the table code:
<table
frame="all" colsep="1" rowsep="1">
<title></title>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="33*"/>
<colspec colnum="2" colname="2" colwidth="33*"/>
<colspec colnum="3" colname="3" colwidth="33*"/>
<thead>
<row rowsep="1">
<entry colname="1"></entry>
<entry colname="2"></entry>
<entry colname="3"></entry>
</row>
</thead>
<tbody valign="middle">
<row rowsep="0">
<entry colname="1"></entry>
<entry colname="2"></entry>
<entry colname="3"></entry>
</row>
</tbody>
</tgroup>
</table>
Or my colwidth="33*" or back to relative colwidth.
That is exactly my problem.
Copy link to clipboard
Copied
When you have specific values to adhere to, you'll want to either set your XML to come in with no values for the colwidth (which means you'll be setting column width via the table format) or use Read/Write Rules to set column width per the colwidth value on read/open file, and to convert the column width to a colwidth attribute on write/save file.
FrameMaker Course Creator, Author, Trainer, Consultant
Copy link to clipboard
Copied
Hi Matt,
Thanks for your answer.
I started updating the templates and incorporating specific values and requirements this year and I am still learning, so I would like to ask for additional details refering to your answer.
so:
1. either set your XML to come in with no values for the colwidth (which means you'll be setting column width via the table format) - I did set values for colwidth so this is not my case
2. use Read/Write Rules to set column width per the colwidth value on read/open file - what is the Read/Write Rule? Can you give me more details, please. I set a value for the colwidth, so this is my case.
3. to convert the column width to a colwidth attribute on write/save file - where I set up this attribute? What is the write/save file.
Thanks a lot!
Zornitza Doneva
Copy link to clipboard
Copied
It sounds like Rick's got you going in the right direction...let us know if his mod to the task.rules.txt works for you.
FrameMaker Course Creator, Author, Trainer, Consultant
Copy link to clipboard
Copied
OK, I understand the issue now. You need to modify the Read/Write rules for the topic types that you are using. For example, for tasks, you can see that I have line 21 commented out. Note that you need admin rights to make changes to those files because they are below the Program Files folder.
Copy link to clipboard
Copied
When this line is commented out (or deleted), FrameMaker will write absolute widths when you save the XML file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE task PUBLIC "-//OASIS//DTD DITA 1.3 Task//EN" "technicalContent/dtd/task.dtd" [
]>
<task id="id205ODK040HS" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">
<title>Command Line: Upgrading the <keyword keyref="product_name"/> using a USB</title>
<shortdesc>This section will document how to upgrade the firmware on the <keyword
keyref="product_name"/>. This process takes approximately 5 minutes to
execute.</shortdesc>
<taskbody>
<prereq><p>To perform the tasks in this section, you will have already logged into the
<keyword keyref="product_name"/> via an <term keyref="SSH_dterm">SSH</term>
connection or through the console port. For all upgrades it is recommended that
user’s backup their current running configuration prior to commencing the upgrade
process. <indexterm/></p><p><b>Valid Upgrade Paths</b>
<table frame="all" colsep="1" rowsep="1">
<title/>
<tgroup cols="3" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="1.640in"/>
<colspec colnum="2" colname="2" colwidth="1.640in"/>
<colspec colnum="3" colname="3" colwidth="1.640in"/>
<thead>
<row rowsep="1">
<entry colname="1"/>
<entry colname="2"/>
<entry colname="3"/>
</row>
</thead>
<tbody valign="middle">
<row rowsep="0">
<entry colname="1"/>
<entry colname="2"/>
<entry colname="3"/>
</row>
</tbody>
</tgroup>
</table></p></prereq>
</taskbody>
</task>
Copy link to clipboard
Copied
Thanks a lot, Rick. It works now!
The XML file is saved with the specified values and after publishing, the table fits the specified layout.
Thanks again! I really appreciate your help!
Regards,
Zornitza Doneva
Copy link to clipboard
Copied
Hi Rick,
I changed and saved many files xml type task - e.g. when the xml file starts with <task id="id205ODK040HS" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">... </task>.
However, I found that the solution does not work for <concept > type xml files.
Here, I updated the colwidth in the file as shown below.
<concept id="id225PDG020XA">
<title>User Manual</title>
<shortdesc>Describes for which documents this manual is valid.</shortdesc>
<prolog>
<author>Zornitza Doneva, P.Eng.</author>
</prolog>
<concept id="id225PDK003E8">
<title>Quick start guide for FL SWITCH
EP72... network switch</title>
<conbody>
<p>UM QS EN EP72..., Revision A</p>
<lines></lines>
<p>This user manual is valid for:</p>
<lines></lines>
<table frame="all" colsep="1" rowsep="1">
<tgroup cols="2" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="3.92in"/>
<colspec colnum="2" colname="2" colwidth="1.00in"/>
<tbody>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-HV</entry>
<entry colname="2">1688995</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-HV</entry>
<entry colname="2">1688994</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-HV</entry>
<entry colname="2">1688993</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-HV</entry>
<entry colname="2">1688992</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-LV</entry>
<entry colname="2">1688991</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-LV</entry>
<entry colname="2">1688990</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-LV</entry>
<entry colname="2">1688989</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-LV</entry>
<entry colname="2">1688988</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-MV</entry>
<entry colname="2">1688987</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-MV</entry>
<entry colname="2">1688986</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-MV</entry>
<entry colname="2">1688985</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-MV</entry>
<entry colname="2">1688983</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-MV</entry>
<entry colname="2">-</entry>
</row>
<row rowsep="0">
<entry colname="1">FL SWITCH EP7232-MV-LV</entry>
<entry colname="2">-</entry>
</row>
</tbody>
</tgroup>
</table>
</conbody>
</concept>
</concept>
Then I saved and reopened the file. The file is back to proportional measures and the table fits the whole width of the page. The code is shown below.
<concept id="id225PDG020XA">
<title>User Manual</title>
<shortdesc>Describes for which documents this manual is valid.</shortdesc>
<prolog>
<author>Zornitza Doneva, P.Eng.</author>
</prolog>
<concept id="id225PDK003E8">
<title>Quick start guide for FL SWITCH
EP72... network switch</title>
<conbody>
<p>UM QS EN EP72..., Revision A</p>
<lines></lines>
<p>This user manual is valid for:</p>
<lines></lines>
<table frame="all" colsep="1" rowsep="1">
<tgroup cols="2" colsep="1" rowsep="1" outputclass="FormatA">
<colspec colnum="1" colname="1" colwidth="80*"/>
<colspec colnum="2" colname="2" colwidth="20*"/>
<tbody>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-HV</entry>
<entry colname="2">1688995</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-HV</entry>
<entry colname="2">1688994</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-HV</entry>
<entry colname="2">1688993</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-HV</entry>
<entry colname="2">1688992</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-LV</entry>
<entry colname="2">1688991</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-LV</entry>
<entry colname="2">1688990</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-LV</entry>
<entry colname="2">1688989</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-LV</entry>
<entry colname="2">1688988</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7232-MV</entry>
<entry colname="2">1688987</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7200-32GSFP-MV</entry>
<entry colname="2">1688986</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-MV</entry>
<entry colname="2">1688985</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7224-RED-MV</entry>
<entry colname="2">1688983</entry>
</row>
<row rowsep="1">
<entry colname="1">FL SWITCH EP7216-16GSFP-MV</entry>
<entry colname="2">-</entry>
</row>
<row rowsep="0">
<entry colname="1">FL SWITCH EP7232-MV-LV</entry>
<entry colname="2">-</entry>
</row>
</tbody>
</tgroup>
</table>
</conbody>
</concept>
</concept>
All your comments have been implemented and work for xml of task type. <task id="id205ODK040HS" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">... </task>
Have you ever had issues with not saving the table width in concept-type xml files?
Regards,
Zornitza Doneva
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Hi Rick,
I'm having the same problem. Re-opening the XML in FM still produce proportional table even though column widths have been hardcoded:
edit: Simpletable element is the one having problem, Table element works as expected.
Copy link to clipboard
Copied
Hi Andy,
I believe that <simpletable> can NOT be changed proportionally. See https://community.adobe.com/t5/framemaker-discussions/framemaker-dita-tables/m-p/10953831
I changed all my table elements to <table>.
Regards,
Zornitza Doneva
Copy link to clipboard
Copied
Thank you for the response, Zornitza. I am replacing all the simpletables, too.

