Hi there,

I have some problems creating a certain XSL:FO file.
I'd like to create series letters respective account statements for n-customers.

The XML-Data is managed like followed:

<data>
<page>
 <name>
   Mr. X
 </name>
 <street>
     X-Street 1
 </street>
 <city>
   Ownedtown
 </city>
 <header>
   Accountstatement
 </header>
 <maintext>
   Foo Bar
 </maintext>
 <column0>
   Documentnumber
 </column0>
 <column1>
   Documenttext
 </column1>
 <column2>
   Debit/Credit
 </column2>
 <body>
  <voucher>
   <docnumber>
   1
   </docnumber>
   <doctext>
   Invoice
   </doctext>
   <amount>
   100
   </amount>
  </voucher>
   .
  n-vouchers
   .
  <voucher>
   <docnumber>
   100
   </docnumber>
   <doctext>
   Invoice
   </doctext>
   <amount>
   120
   </amount>
  </voucher>
 </body>
</page>
<page>
   same as obove
</page> </data>


One 'page' is one customer with its n-Vouchers. The first page should contain receipient address, subject,
columnnames, text etc and the list of vouchers.
That works fine but when there are many vouchers, a second page ist printed, but with the receipient adress, subject etc.

How to handle this?`

The XSL-File:

<xsl:template match ="/">
       <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
       <fo:layout-master-set>
           <fo:simple-page-master     master-reference="main"
                       page-height="29.7cm"
                       page-width="21cm"
                       margin-top="6.0cm"
                       margin-bottom="1.5cm"
                       margin-left="1.5cm"
                       margin-right="1.5cm">
               <fo:region-before extent="8.0cm"/>
               <fo:region-after extent="2.0cm"/>
               <fo:region-body margin-top="7.0cm" margin-bottom="0.5cm"/>
           </fo:simple-page-master>
       </fo:layout-master-set>
       <xsl:for-each select="data/page">
       <fo:page-sequence master-name="main" initial-page-number="1">
           <fo:static-content flow-name="xsl-region-before">
                           <fo:table table-layout="fixed" padding="3pt">
<fo:table-column column-width="10cm"/>
                   <fo:table-column column-width="8cm"/>
                                       <fo:table-header>
                                       <fo:table-row>
                           <fo:table-cell>
                               <fo:block     text-align="left"
                                       font-size="10pt"
                                       font-family="Courier"
                                       line-height="14pt">
<xsl:apply-templates select="title"/> <fo:block></fo:block> <xsl:apply-templates select="name1"/> <fo:block></fo:block> <xsl:apply-templates select="name2"/> <fo:block></fo:block> <xsl:apply-templates select="street"/> <fo:block></fo:block> <xsl:apply-templates select="postalcode"/><xsl:apply-templates select="city"/>
                               </fo:block>
                           </fo:table-cell>
                   </fo:table-row>
                   <fo:table-row>
<fo:table-cell number-columns-spanned="2"> <fo:block font-family="Courier" font-size="10pt" text-align="left"> <xsl:apply-templates select="header"/>
                                                           </fo:block>
                               </fo:table-cell>
                                       </fo:table-row>
                                   <fo:table-row>
<fo:table-cell number-columns-spanned="2"> <fo:block font-family="Courier" font-size="10pt" text-align="left"> <xsl:apply-templates select="maintext"/>
                                                               </fo:block>
                           </fo:table-cell>
                                        </fo:table-row>
       </fo:table-body>
               </fo:table>
<fo:table table-layout="fixed" padding="1pt"> <fo:table-column column-width="2.6cm"/> <fo:table-column column-width="2.0cm"/> <fo:table-column column-width="2.3cm"/>
                   <fo:table-header>
                       <fo:table-row>
                           <fo:table-cell >
<fo:block font-family="Courier" font-size="10pt" text-align="left"> <xsl:apply-templates select="column0"/>
                               </fo:block>
                           </fo:table-cell>
                           <fo:table-cell>
<fo:block font-family="Courier" font-size="10pt" text-align="left" > <!-- white-space-collapse="false">--> <xsl:apply-templates select="column1"/>
                               </fo:block>
                           </fo:table-cell>
                                                       <fo:table-cell>
<fo:block font-family="Courier" font-size="10pt" text-align="left" > <!-- white-space-collapse="false">--> <xsl:apply-templates select="column2"/>
                               </fo:block>
                                                       </fo:table-cell>
                       </fo:table-row>
                                       </fo:table-header>
                                       <fo:table-body>
                                       </fo:table-body>
               </fo:table>
           </fo:static-content>
           <fo:flow flow-name="xsl-region-body">
               <xsl:apply-templates/>
           </fo:flow>
       </fo:page-sequence>
   </xsl:for-each>
   </fo:root>
   </xsl:template>
   <xsl:template match="data/page/body/voucher" >
           <fo:table table-layout="fixed" padding="1pt">
               <fo:table-column column-width="2.6cm"/>
               <fo:table-column column-width="2.0cm"/>
               <fo:table-column column-width="2.3cm"/>
               <fo:table-header>
       <fo:table-row>
                   <fo:table-cell >
<fo:block font-family="Courier" font-size="10pt" text-align="left">
                           <xsl:apply-templates select="docnumber"/>
           </fo:block>
                   </fo:table-cell>
                   <fo:table-cell >
<fo:block font-family="Courier" font-size="10pt" text-align="left">
                           <xsl:apply-templates select="doctext"/>
           </fo:block>
                   </fo:table-cell>
                   <fo:table-cell >
<fo:block font-family="Courier" font-size="10pt" text-align="right" border-width="1mm"> <!-- white-space-collapse="false">-->
                           <xsl:apply-templates select="amount"/>
           </fo:block>
                   </fo:table-cell>
               </fo:table-row>
               </fo:table-header>
               <fo:table-body>
               </fo:table-body>
           </fo:table>
       </xsl:template>



Can sb give me a hint?

Greets
kirashet

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to