0

以下是我使用创建的报告,xsl并且xml此报告是在 Pdf 中创建的,请单击下面url查看报告布局

在此处输入图像描述

而xsl是..

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:set="http://exslt.org/sets" extension-element-prefixes="set" exclude-result-prefixes="fo">
  <xsl:output method="xml" version="1.0" omit-xml-declaration="no" indent="yes"/>
      <xsl:template match="/">
    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
      <fo:layout-master-set>
        <fo:simple-page-master master-name="A4" page-width="21cm" page-height="29.7cm" margin-top="2cm" margin-bottom="1cm" margin-left="1cm" margin-right="1cm">
           <fo:region-body margin-bottom="2cm" margin-top="4cm"/>
          <fo:region-after extent="2cm"/>
          <fo:region-before extent="4cm"/>
        </fo:simple-page-master>
              </fo:layout-master-set>
      <fo:page-sequence master-reference="A4" initial-page-number="1">
        <fo:static-content flow-name="xsl-region-after">
            <fo:block border-bottom-style="solid" 
                               text-align="left" font-size="9pt"  >
               </fo:block>
          <fo:block font-size="9pt" text-align="end">
            <fo:table table-layout="fixed">
              <fo:table-column column-width="9.5cm"/>
              <fo:table-column column-width="9.5cm"/>
               <fo:table-body>
                <fo:table-row>
                        <fo:table-cell
                                        text-align="center">
                    <fo:block text-align="left">
                                            Run:
                                    <xsl:value-of select="substring(  DepartmentSalesReport/CurrentDate , 6, 2 )" />
                                        /
                                    <xsl:value-of select="substring(  DepartmentSalesReport/CurrentDate , 9, 2 )" />
                                        /
                                    <xsl:value-of select="substring(  DepartmentSalesReport/CurrentDate , 1, 4 )" />
                                        @
                                    <xsl:value-of select="DepartmentSalesReport/currentTime" />
                                        </fo:block>
                            </fo:table-cell>
                   <fo:table-cell text-align="right">
                    <!--fo:block space-before="8mm">
                      <xsl:text>Keep this report for 6 months</xsl:text>
                    </fo:block-->
                  </fo:table-cell>
                  <fo:table-cell >
                    <fo:block space-before="8mm">Page <fo:page-number/> of <fo:page-number-citation ref-id="terminator"/></fo:block>
                  </fo:table-cell>
                </fo:table-row>
              </fo:table-body>
            </fo:table>

          </fo:block>
        </fo:static-content>

        <fo:static-content flow-name="xsl-region-before">
          <fo:block text-align-last="center" space-after="1.5cm">
            <fo:table table-layout="fixed">
              <fo:table-column column-width="4cm"/>
              <fo:table-column column-width="10cm"/>
               <fo:table-column column-width="2cm"/>
               <fo:table-column column-width="2cm"/>
              <fo:table-body>
                <fo:table-row>
                  <fo:table-cell  font-size="9pt">
                    <fo:block>Store Number:
                      <xsl:value-of select="DepartmentSalesReport/store_code"/>
                    </fo:block>
                  </fo:table-cell>
                   <fo:table-cell text-align="center">
                             <fo:block  text-align-last="center" font-size="14pt" font-weight="bold" space-after="1mm">
                                <fo:inline text-decoration="underline">Department Sales Report</fo:inline>
                               </fo:block>
                  </fo:table-cell>
                  <fo:table-cell text-align="right"   font-size="9pt">
                     <fo:block > 
                        <xsl:value-of select="DepartmentSalesReport/tradingday"/>   
                     </fo:block>
                  </fo:table-cell>
                  <fo:table-cell text-align="right" font-size="9pt">
                    <xsl:variable name="date"><xsl:value-of select="DepartmentSalesReport/tradingdate"/></xsl:variable>
                    <fo:block> 
                        <xsl:value-of select="substring($date,5,2)"/>/<xsl:value-of select="substring($date,7,2)"/>/<xsl:value-of select="substring($date,1,4)"/>
                    </fo:block>
                  </fo:table-cell>
                </fo:table-row>
              </fo:table-body>
            </fo:table>
          <fo:table table-layout="fixed">
              <fo:table-column column-width="19cm"/>
          <fo:table-body>
                <fo:table-row>
                   <fo:table-cell text-align="center">
                                      <fo:block text-align-last="center" font-size="9pt" >
                                        Summary of Sales by department, only those
                                            departments with activity (Sales,
                                            refunds, voids) will appear on this
                                            report.Use this report to monitor sales in
                                            key departments and make merchandising
                                            decisions as needed.
                          </fo:block>
                  </fo:table-cell>
                </fo:table-row>
              </fo:table-body>
            </fo:table>
          </fo:block>
          <fo:block font-size="9pt" >
           <fo:table table-layout="fixed" >
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="6cm"
                                text-align="center"/>
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.8cm" 
                                text-align="center"/>
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm"
                                text-align="center"/>
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-body>
                            <fo:table-row>
                            <fo:table-cell number-columns-spanned="9"> <fo:block color="black"
                        space-before.optimum="-8pt">
                        <fo:block border-bottom-style="solid" 
                               text-align="left" font-size="9pt"  />

                    </fo:block></fo:table-cell>
                            </fo:table-row>
                            <fo:table-row font-weight="bold">
                                <fo:table-cell number-columns-spanned="2">
                            <fo:block text-align="left"><xsl:text>-------------------------Department-------------------</xsl:text></fo:block>
                            </fo:table-cell>
                            <fo:table-cell number-rows-spanned="2">
                            <fo:block text-align="right"><xsl:text>Net Sales</xsl:text></fo:block>
                            </fo:table-cell>
                            <fo:table-cell number-rows-spanned="2">
                            <fo:block text-align="right"><xsl:text>Qty</xsl:text></fo:block>
                            </fo:table-cell>
                            <fo:table-cell number-rows-spanned="2">
                            <fo:block text-align="right"><xsl:text>% of Sales</xsl:text></fo:block>
                            </fo:table-cell>
                            <fo:table-cell number-columns-spanned="2">
                            <fo:block text-align="right"><xsl:text>--------Void--------</xsl:text></fo:block>
                            </fo:table-cell>
                                <fo:table-cell number-columns-spanned="2">
                            <fo:block text-align="right"><xsl:text>-------Return-------</xsl:text></fo:block>
                            </fo:table-cell>        
                                </fo:table-row>
                                <fo:table-row font-weight="bold">
                                    <fo:table-cell>
                                            <fo:block text-align="left">
                                                <xsl:text>#</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="left">
                                                <xsl:text>Description</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:text>Qty</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:text>Amount</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:text>Qty</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:text>Amount</xsl:text>
                                            </fo:block>
                                        </fo:table-cell>
                                </fo:table-row>
                    <fo:table-row >
                            <fo:table-cell number-columns-spanned="9" > <fo:block color="black"
                        space-before.optimum="-8pt">

                    </fo:block></fo:table-cell>
                            </fo:table-row>

                            </fo:table-body>
                            </fo:table>
          </fo:block>
          <fo:block border-bottom-style="solid" 
                               text-align="left" font-size="9pt"  />



     </fo:static-content>


        <fo:flow flow-name="xsl-region-body">
        <xsl:variable name="storeSales" select="sum(DepartmentSalesReport/DepartmentDesc/netSales)"/>
        <br/>
          <!--          <fo:block font-size="9pt" space-after="3mm" break-before="page">-->
            <xsl:for-each select="DepartmentSalesReport/DepartmentDesc">
                    <fo:block font-size="9pt" space-after="1mm">
                    <fo:table table-layout="fixed" >
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="6cm"
                                text-align="center"/>
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.8cm" />
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm" />
                            <fo:table-column
                                column-width="1.6cm"
                                text-align="center"/>
                            <fo:table-column
                                column-width="1.6cm" />
                    <fo:table-body>
                        <xsl:variable name="levelNo"><xsl:value-of select="levelNbr"/></xsl:variable>
                                <xsl:variable name="levelCheck"><xsl:value-of select="level"/></xsl:variable>
                                <xsl:if test="$levelCheck!=''">
                                    <xsl:if test="$levelNo='2'">
                                    <fo:table-row>  
                                    <fo:table-cell number-columns-spanned="9">
                                    <fo:block>
                                           <xsl:text>&#160;</xsl:text>
                                    </fo:block>
                                    </fo:table-cell>
                                    </fo:table-row>
                                </xsl:if>
                     <fo:table-row >
                                        <fo:table-cell>
                                            <fo:block text-align="left">
                                                <xsl:value-of select="level"/>
                                            </fo:block>
                                        </fo:table-cell>

                                        <xsl:choose>
                                        <xsl:when test="$levelNo!='2'">
                                        <fo:table-cell>
                                            <fo:block text-align="left">
                                                <xsl:value-of select="prgpName"/>
                                            </fo:block>
                                        </fo:table-cell>
                                            </xsl:when>
                                        <xsl:otherwise>
                                            <fo:table-cell>
                                                <fo:block text-align="left">
                                                    ***DEPT TOTAL*** </fo:block>
                                            </fo:table-cell>
                                        </xsl:otherwise>
                                            </xsl:choose>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(netSales,'0.00')"/>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(prodCount,'0')"/>
                                            </fo:block>
                                        </fo:table-cell>


                                        <fo:table-cell>
                                            <xsl:variable name="salesPercentage"><xsl:value-of select="format-number((netSales div $storeSales)*100, '###,##0')"/></xsl:variable>
                                            <xsl:if test="$salesPercentage='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$salesPercentage!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$salesPercentage"/>
                                            </fo:block>
                                            </xsl:if>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(postVoidQuantity,'0')"/>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(postVoidAmount,'0.00')"/>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(returnQuantity,'0')"/>
                                            </fo:block>
                                        </fo:table-cell>
                                        <fo:table-cell>
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="format-number(returnAmount,'0.00')"/>
                                            </fo:block>
                                        </fo:table-cell>
                                    </fo:table-row>
                        <xsl:if test="$levelNo='2'">
                                    <fo:table-row>  
                                    <fo:table-cell number-columns-spanned="9">
                                    <fo:block>
                                           <xsl:text>&#160;</xsl:text>
                                    </fo:block>
                                    </fo:table-cell>
                                    </fo:table-row>
                                </xsl:if>
                                    </xsl:if>
                    </fo:table-body>

                  </fo:table>
                </fo:block>
            </xsl:for-each>

            <fo:block border-bottom-style="solid" text-align="left"
                font-size="9pt" space-before="3mm" />
            <fo:block font-size="9pt" space-after="4mm">

                <fo:table>
                    <fo:table-column column-width="1.5cm" />
                    <fo:table-column column-width="4.5cm" />
                    <fo:table-column column-width="3.3cm" />

                    <fo:table-header>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block font-weight="bold"></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block text-align="left" space-after="4mm"
                                    space-before="3mm" font-weight="bold">
                                    <xsl:text>DEPARTMENT TOTALS</xsl:text>
                                </fo:block>
                            </fo:table-cell>

                        </fo:table-row>
                    </fo:table-header>

                    <fo:table-body>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold">
                                    <xsl:text>SS SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right">
                                    <xsl:variable name="ssSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/ssSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$ssSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$ssSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$ssSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold">
                                    <xsl:text>CIGARETTE SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block text-align="right" font-weight="bold">
                                <xsl:variable name="cigeratteSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/cigeratteSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$cigeratteSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$cigeratteSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$cigeratteSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block space-after="1.5mm" font-weight="bold">
                                    <xsl:text>LIQUOR SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right"
                                    space-after="4mm">
                                    <xsl:variable name="liquorSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/liquorSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$liquorSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$liquorSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$liquorSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" space-after="8mm">
                                    <xsl:text>TOTAL FRONT END SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right"
                                    space-after="4mm">
                                    <xsl:variable name="totalSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/totalSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$totalSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$totalSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$totalSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>

                    </fo:table-body>

                </fo:table>

            </fo:block> 



              <fo:block space-before="5mm" text-align="center" font-size="9pt" font-weight="bold" id="terminator">
                 <xsl:text></xsl:text>
          </fo:block>

        </fo:flow>

      </fo:page-sequence>
    </fo:root>
  </xsl:template>

</xsl:stylesheet>

xml是..

<?xml version="1.0" encoding="UTF-8"?>
<Report Name="DepartmentSalesReport" Title="Department Sales Report"
    Description="Department Sales Report" Version="1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <InitParam Name="tradingdate" Type="java.lang.String" />
      <InitParam Name="tradingday" Type="java.lang.String" />
      <ReportBand BandType="HeaderBand" Name="DepartmentSalesReportBand">
        <ReportElement Type="Header" DataSource="OutletSQL">
        <DataField Name="store_code" Type="Data" FieldName="ORGU_CODE" />
        </ReportElement>
        <ReportElement Type="Header" DataSource="InitParams">
        <DataField Name="tradingdate" Type="Data" FieldName="tradingdate" />
        </ReportElement>
        <ReportElement Type="Header" DataSource="InitParams">
        <DataField Name="tradingday" Type="Data" FieldName="tradingday" />
        </ReportElement>
    </ReportBand>
    <ReportBand BandType="DetailBand" Name="Terminal">
        <ReportElement Type="Detail" Name="DepartmentDesc" DataSource="DataSql">
            <DataField Name="level" Type="Data" FieldName="LEVEL"/>
            <DataField Name="levelNbr" Type="Data" FieldName="LEVELNBR"/>
            <DataField Name="prgpName" Type="Data" FieldName="PRGP_NAME"/>
            <DataField Name="prodCount" Type="Data" FieldName="PROD_COUNT"/>
            <DataField Name="netSales" Type="Data" FieldName="NET_SALES"/>
            <DataField Name="postVoidQuantity" Type="Data" FieldName="POST_VOID_QUANTITY"/>
            <DataField Name="postVoidAmount" Type="Data" FieldName="POST_VOID_AMOUNT"/>
            <DataField Name="returnQuantity" Type="Data" FieldName="RETURN_QUANTITY"/>
            <DataField Name="returnAmount" Type="Data" FieldName="RETURN_AMOUNT"/>  

        </ReportElement>
        <ReportElement Type="Detail" Name="DepartmentTotals" DataSource="TotalsDataSql" MaxResults="1">
            <DataField Name="ssSales" Type="Data" FieldName="LINE_NUM_50"/>
            <DataField Name="cigeratteSales" Type="Data" FieldName="LINE_NUM_30"/>
            <DataField Name="liquorSales" Type="Data" FieldName="LINE_NUM_60"/>
            <DataField Name="totalSales" Type="Data" FieldName="TOTAL_FRONT_END_SALES"/>
        </ReportElement>

        <ReportElement Type="Header" DataSource="DateSQL">
            <DataField Name="CurrentDate" Type="Data" FieldName="1" />
            <DataField Name="currentTime" Type="Data" FieldName="2" />
        </ReportElement>
    </ReportBand>
    <DataSource
        Type="walgreens.pos.maintenance.eod.CurrentDepartmentSalesReportDataSource"
        Name="DataSql"
        Statement="">
    </DataSource>
    <DataSource
        Type="walgreens.pos.maintenance.eod.DepartmentTotalsReportDataSource"
        Name="TotalsDataSql"
        Statement="">
    </DataSource>
    <DataSource
        Type="com.pcmsgroup.v21.star.framework.application.reports.SpringReadOnlySQLStatement"
        Name="OutletSQL"
        Statement="select ORGU_CODE,OUTL_TRADE_DATE from outlet,org_unit where outlet.OUTL_ID = org_unit.OUTL_ID">
    </DataSource>

    <DataSource
        Type="com.pcmsgroup.v21.star.framework.application.reports.SpringReadOnlySQLStatement"
        Name="DateSQL"
        Statement="SELECT current date,current time FROM sysibm.sysdummy1">
    </DataSource>

</Report>

我只想知道在 xsl 中有以下几行..

 <fo:block border-bottom-style="solid" text-align="left"
                font-size="9pt" space-before="3mm" />
            <fo:block font-size="9pt" space-after="4mm">

                <fo:table>
                    <fo:table-column column-width="1.5cm" />
                    <fo:table-column column-width="4.5cm" />
                    <fo:table-column column-width="3.3cm" />

                    <fo:table-header>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block font-weight="bold"></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block text-align="left" space-after="4mm"
                                    space-before="3mm" font-weight="bold">
                                    <xsl:text>DEPARTMENT TOTALS</xsl:text>
                                </fo:block>
                            </fo:table-cell>

                        </fo:table-row>
                    </fo:table-header>

                    <fo:table-body>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold">
                                    <xsl:text>SS SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right">
                                    <xsl:variable name="ssSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/ssSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$ssSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$ssSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$ssSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold">
                                    <xsl:text>CIGARETTE SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block text-align="right" font-weight="bold">
                                <xsl:variable name="cigeratteSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/cigeratteSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$cigeratteSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$cigeratteSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$cigeratteSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block space-after="1.5mm" font-weight="bold">
                                    <xsl:text>LIQUOR SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right"
                                    space-after="4mm">
                                    <xsl:variable name="liquorSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/liquorSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$liquorSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$liquorSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$liquorSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>
                        <fo:table-row>
                            <fo:table-cell>
                                <fo:block></fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" space-after="8mm">
                                    <xsl:text>TOTAL FRONT END SALES</xsl:text>
                                </fo:block>
                            </fo:table-cell>
                            <fo:table-cell>
                                <fo:block font-weight="bold" text-align="right"
                                    space-after="4mm">
                                    <xsl:variable name="totalSales"><xsl:value-of select="format-number(DepartmentSalesReport/DepartmentTotals/totalSales,'0.00')"/></xsl:variable>
                                            <xsl:if test="$totalSales='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:text>0</xsl:text>
                                            </fo:block>
                                            </xsl:if>
                                            <xsl:if test="$totalSales!='NaN'">
                                            <fo:block text-align="right">
                                                <xsl:value-of
                                                    select="$totalSales"/>
                                            </fo:block>
                                            </xsl:if>
                                </fo:block>
                            </fo:table-cell>
                        </fo:table-row>

                    </fo:table-body>

                </fo:table>

            </fo:block> 

现在我的疑问是为什么我们在 fo:table 中选择了三个 fo:table-column ,请指教..!!

4

1 回答 1

1

您的 xslt 和您在问为什么我们在 fo:table 中选择了三个 fo:table-column

无论如何要在表格中得到正确的渲染,我认为已经选择了三列。您可以将它放在单列中,但它看起来不会很好,并且所有内容都将被包装到单列中。修改这个

<fo:table border="1pt solid black">然后<fo:table-row border-top="1pt solid black">你可以看到表格从哪里开始和在哪里结束。

于 2012-11-15T17:42:32.230 回答