Skip to main content
1-Visitor
December 2, 2011
Question

can't force rule after merged cell preceding footer

  • December 2, 2011
  • 15 replies
  • 2201 views
Hi,

I've got a strange problem. Using Editor 5.3 m110 and the table included
below, I am unable to get a rule trailing the merged cell preceding the
footer. Anyone seen this before? Known bug or "feature"? Got a workaround?

I manually added the rowsep="1" on the cell in question. The table
interface wouldn't do it.

<table frame="top">
<title>can't force rule after merged cell preceding footer </title>
<tgroup cols="4"><colspec colname="col1"/"><colspec colname="col2"/"><colspec<br/>colname="col3"/><colspec colname="col4"/">
<thead>
<row>
<entry colsep="0" valign="top">
<para>Header</para>
</entry>
<entry colsep="0" valign="top"></entry>
<entry colsep="0" valign="top"></entry>
<entry colsep="0" valign="top"></entry>
</row>
</thead>
<tfoot>
<row>
<entry colsep="0" valign="top">
<para>Footer</para>
</entry>
<entry colsep="0" valign="top"></entry>
<entry colsep="0" valign="top"></entry>
<entry colsep="0" valign="top"></entry>
</row>
</tfoot>
<tbody>
<row>
<entry colsep="0">
<para>one</para>
</entry>
<entry colsep="0" morerows="1" rowsep="1">
<para>I should have a trailing rule.</para>
</entry>
<entry colsep="0">
<para>three</para>
</entry>
<entry colsep="0">
<para>four</para>
</entry>
</row>
<row>
<entry colsep="0">
<para>five</para>
</entry>
<entry colsep="0">
<para>six</para>
</entry>
<entry colsep="0">
<para>7</para>
</entry>
</row>
</tbody>
</tgroup>
</table>

--
Paul Nagai

    15 replies

    1-Visitor
    December 3, 2011
    It's a little ugly (wouldn't be a workaround if it wasn't, right?),
    but try adding an extra row at the start of the footer, leaving all
    the cells blank and setting the row height to 0pt. The rules applied
    to the "bottom" of that row should overlap with the rules of the last
    row before the footer.

    -Brandon 🙂


    naglists1-VisitorAuthor
    1-Visitor
    December 3, 2011
    I tried something very similar (0in 😉 but the row still output. I removed
    all cellpadding from the table. Stlil no good. I set txtbrk or whatever to
    endln=0, startln=0 (or whatever) on gi="row" (or was it gi="entry") and
    still no good. Then I abandoned that avenue ...

    Currently working on faking a footer font in a "real" row. It won't support
    tables breaking across pages, but I think I can get it to work as long as
    the table doesn't break.

    On Fri, Dec 2, 2011 at 3:11 PM, Brandon Ibach <
    brandon.ibach@single-sourcing.com> wrote:

    > It's a little ugly (wouldn't be a workaround if it wasn't, right?),
    > but try adding an extra row at the start of the footer, leaving all
    > the cells blank and setting the row height to 0pt. The rules applied
    > to the "bottom" of that row should overlap with the rules of the last
    > row before the footer.
    >
    > -Brandon 🙂
    >
    >
    >
    1-Visitor
    December 3, 2011
    I put your table into a new Docbook document in Styler 5.3 M010 and
    made the change as I described, which worked perfectly, as least in
    Print Preview. The exact markup was as below. Not sure what other
    twists and turns you might have in your setup that are keeping this
    from working. 😞

    <table frame="top">
    <title>can't force rule after merged cell preceding footer</title>
    <tgroup cols="4">
    <colspec colname="col1"/">
    <colspec colname="col2"/">
    <colspec colname="col3"/">
    <colspec colname="col4"/">
    <thead>
    <row><entry colsep="0" valign="top"><para>Header</para></entry><entry<br/>colsep="0" valign="top"></entry><entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry></row>
    </thead>
    <tfoot>
    <row>

    <entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry>
    </row>
    <row>
    <entry colsep="0" valign="top"><para>Footer</para></entry>
    <entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry>
    <entry colsep="0" valign="top"></entry>
    </row>
    </tfoot>
    <tbody>
    <row>
    <entry colsep="0"><para>one</para></entry>
    <entry colsep="0" morerows="1" rowsep="0"><para>I should have a trailing
    rule</para></entry>
    <entry colsep="0"><para>three</para></entry>
    <entry colsep="0"><para>four</para></entry>
    </row>
    <row>
    <entry colsep="0" rowsep="0"><para>five</para></entry>
    <entry colsep="0" rowsep="0"><para>six</para></entry>
    <entry colsep="0" rowsep="0"><para>7</para></entry>
    </row>
    </tbody>
    </tgroup>
    </table>

    -Brandon 🙂


    naglists1-VisitorAuthor
    1-Visitor
    December 5, 2011
    Thanks, Brandon. I got that to work. Strange. I know I worked with a 0
    height row. I know I worked with putting it at the end of the table (not in
    the footer). I can't remember if I tried it in the footer, though. I also
    know I worked with 0in, not 0pt. Turns out the interface "fails" if you try
    and set a row height to fixed = 0in. You don't get a warning or any
    feedback, but nothing actually gets set. I didn't notice that until now. I
    had been working in Edit source as XML since I was also playing with
    setting rowsep in places the interface wouldn't put them so I may not have
    actually run across that little failing ... and of course I kept reworking
    my same file, so I can't go back and figure out where/what exactly I
    did/didn't do.

    Anyhow ... thanks again! My users will be happy for a fix / trick /
    workaround / whatever this is.

    And, tables are what? TSOS! (Hi, Lynn! Or was that Ed?)



    On Fri, Dec 2, 2011 at 5:16 PM, Brandon Ibach <
    brandon.ibach@single-sourcing.com> wrote:

    > I put your table into a new Docbook document in Styler 5.3 M010 and
    > made the change as I described, which worked perfectly, as least in
    > Print Preview. The exact markup was as below. Not sure what other
    > twists and turns you might have in your setup that are keeping this
    > from working. 😞
    >
    > <table frame="top">
    > <title>can't force rule after merged cell preceding footer</title>
    > <tgroup cols="4">
    > <colspec colname="col1"/">
    > <colspec colname="col2"/">
    > <colspec colname="col3"/">
    > <colspec colname="col4"/">
    > <thead>
    > <row><entry colsep="0" valign="top"><para>Header</para></entry><entry<br/>> colsep="0" valign="top"></entry><entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry></row>
    > </thead>
    > <tfoot>
    > <row>
    >
    > <entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry>
    > </row>
    > <row>
    > <entry colsep="0" valign="top"><para>Footer</para></entry>
    > <entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry>
    > <entry colsep="0" valign="top"></entry>
    > </row>
    > </tfoot>
    > <tbody>
    > <row>
    > <entry colsep="0"><para>one</para></entry>
    > <entry colsep="0" morerows="1" rowsep="0"><para>I should have a trailing
    > rule</para></entry>
    > <entry colsep="0"><para>three</para></entry>
    > <entry colsep="0"><para>four</para></entry>
    > </row>
    > <row>
    > <entry colsep="0" rowsep="0"><para>five</para></entry>
    > <entry colsep="0" rowsep="0"><para>six</para></entry>
    > <entry colsep="0" rowsep="0"><para>7</para></entry>
    > </row>
    > </tbody>
    > </tgroup>
    > </table>
    >
    > -Brandon 🙂
    >
    >
    >
    1-Visitor
    December 20, 2011

    Paul,


    I'm sure, as someone replied with, there is a bug that is now fixed in 6.0 M010. However, to explain what's happening, the last row you have that includes the spanned column is the "bottom" of the table. That's why the frame="topbot" puts a line there. However, as you noted, it also will put a line under the footer, which you do not want.


    Due to the way tables work in Arbortext, there is often a time where we want to manipulate the behavoir. One of those methods of manipulation is to place a row somewhere with a "0" height. (Since I use CP, as well, I use "0.0001pt".) Anyway, it places a row somewhere that has all the properties of a row without the height being shown. The method that Brandon gave is an excellent example of this technique.


    By placing a row with "0" height at the end of the table, that new rowis now taking the place of the "last" row in the table. Therefore, your row with a span in it will be allowed to operate normally, or at least as expected. The last row in the table is always controlled by the "frame" attribute on the table.


    Hope this helps,


    Bob