xsl-list
[Top] [All Lists]

Pagebreaks in Excel-HTML transformer

2006-01-31 21:33:56
Hi,

I am trying to fix the following bug in the existing Cocoon 2.0.4/XSLT1.0 app:
it produces the output multipage data file in both Word and Excel,
In Excel at some point (from page 5 of 25) the pagebreaks start
happening 3 lines
after they should be (and increases by 3 more lines on some
of subsequent pages), but there is no such problem in Word.
Happens for both Excel 2000 and 2003.

here is an exerpt from the sitemap:
...
<map:transform type="xslt" src="xslt/cm/{../1}sheet-transform.xsl"
label="transform">
       <map:parameter name="sec_user_id" value="{userId}"/>
       <map:parameter name="page" value="{../1}sheet"/>
</map:transform>
<map:transform type="xslt" src="xslt/excel-html-transform.xsl" label="html">
        <map:parameter name="sec_user_id" value="{userId}"/>
        <map:parameter name="page" value="{../1}sheet"/>
</map:transform>
<map:serialize type="fakeout-xls"/>
</map:act>
</map:match>

There is a very similar part for Word where (so the input to Excel and
Word transformers is the same and has pagebreak tag
in the proper place):
<map:serializer name="fakeout-xls" mime-type="application/vnd.ms-excel"
               src="org.apache.cocoon.serialization.HTMLSerializer"/>
<map:serializer name="fakeout-word" mime-type="application/msword"
               src="org.apache.cocoon.serialization.HTMLSerializer"/>

Here is a fragment of the Excel-html-transformer:
<x:PageBreaks>
       <x:RowBreaks>
            <xsl:for-each select="/document/helper-info/row-breaks/row">
               <x:RowBreak>
                   <x:Row><xsl:value-of select="."/></x:Row>
               </x:RowBreak>
             </xsl:for-each>
          </x:RowBreaks>
</x:PageBreaks>

Looks like the Excel page formatting occurs  in that  HTML serializer,
at least if I put a  standard   <map:serialize type="html"/> insted of
fakeout-xls,
the pages are not showing any pagebreaks at all....

What do you think might be wrong?   Please help !

Here is a snippet of my input XML:
...
<row>
<cell>&nbsp;</cell>
</row>
</table>
<page-break></page-break>     <!--  you can see a page-break between 2
tables ! -->
<table>
<row>
<cell>
<proposal-name>P Plus HMO Alt Tier Test 082605</proposal-name>
</cell>
</row>
<row>
...

If I run that XSLT transformation in XMLSpy2006,
resulting XSLOutput.html does not show any page breaks
at all (none at all in the whole document, it also drops all <table> tags):
...</td>
</tr>
<tr xmlns="">
<td xmlns="">&amp;nbsp;</td>
</tr>
<tr xmlns="">
<td xmlns="" colspan="7" class="xl32">P Plus HMO Alt Tier Test 082605</td>
</tr>

So I it's a serializer interpreting the pagebreaks:
<map:serializer name="fakeout-xls" mime-type="application/vnd.ms-excel"
               src="org.apache.cocoon.serialization.HTMLSerializer"/>

Any ideas what might be wrong there ?  Any known bug ?

Any help is very appreciated.


Thank you in advance,
Oleg

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>
  • Pagebreaks in Excel-HTML transformer, Oleg Konovalov <=