You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Midhat Ali <mi...@gmail.com> on 2006/07/29 10:11:54 UTC

XSLFO Problem

I am trying to make a PDF report for the BOM. I converted a segment of
BomSimulation.ftl to BimSimulation.fo.ftl. heres the file

<?xml version="1.0" encoding="UTF-8"?>
  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
   <fo:layout-master-set>

   <fo:simple-page-master
   margin-right="15mm" margin-left="15mm"
   margin-bottom="15mm" margin-top="15mm"
   page-width="210mm" page-height="297mm"
   master-name="bookpage">
   <fo:region-body region-name="bookpage-body"

   margin-bottom="5mm" margin-top="5mm" />
   </fo:simple-page-master>
   </fo:layout-master-set>
   <fo:page-sequence master-reference="bookpage">
   <fo:title>Hello world example</fo:title>

   <fo:flow flow-name="bookpage-body">
   <fo:block>

<#-- <#if requestParameters.lookupFlag?default("N") == "Y"> -->


sample text

      <fo:table>
      <fo:table-column column-width="1in"/>
       <fo:table-column column-width="1in"/>
        <fo:table-column column-width="1in"/>
        <fo:table-column column-width="1in"/>
        <fo:table-column column-width="1in"/>
        <fo:table-column column-width="1in"/>
        <fo:table-column column-width="1in"/>
      <fo:table-body>

        <fo:table-row>
          <fo:table-cell>col 1${uiLabelMap.ManufacturingProductLevel
}</fo:table-cell>
          <fo:table-cell>${uiLabelMap.ProductProductId}</fo:table-cell>
          <fo:table-cell>---</fo:table-cell>
          <fo:table-cell>${uiLabelMap.ProductProductName}</fo:table-cell>
          <fo:table-cell>${uiLabelMap.CommonQuantity}</fo:table-cell>
          <fo:table-cell>${uiLabelMap.ManufacturingComponentCost
}</fo:table-cell>
          <fo:table-cell>${uiLabelMap.ManufacturingComponentValue
}</fo:table-cell>
        </fo:table-row>
        <fo:table-row>
          <fo:table-cell></fo:table-cell>
        </fo:table-row>
        <#if tree?has_content>
          <#assign rowClass = "viewManyTR2">
          <#list tree as node>
            <#-- toggle the row color -->
            <#if rowClass == "viewManyTR2">
              <#assign rowClass = "viewManyTR1">
            <#else>
              <#assign rowClass = "viewManyTR2">
            </#if>
          </#list>
        <#else>
          <fo:table-row>
            <fo:table-cell>${uiLabelMap.CommonNoElementFound
}.</fo:table-cell>
          </fo:table-row>
        </#if>
      </fo:table-body>
      </fo:table>

<#-- </#if> -->

</fo:block>
   </fo:flow>
   </fo:page-sequence>

  </fo:root>

It just prints the text before table
 "sample text"
but does not print even the tabl headers. Please help

Re: XSLFO Problem

Posted by Midhat Ali <mi...@gmail.com>.
theres no eror. The file renders (thats why i included the "sample text" in
the file). it just doesnt show the table headers

On 7/29/06, Jacopo Cappellato <ti...@sastau.it> wrote:
>
> Have a look at the error log (framework/logs/ofbiz.log): you should find
> there the reason of this problem.
> If you cannot find it, please zip the file and send it to me so that I
> can have a look
>
> Jacopo
>
>
> Midhat Ali wrote:
> > Hi Jacopo
> >
> > i did as you said. it still doesnt work
> >
> > On 7/29/06, Jacopo Cappellato <ti...@sastau.it> wrote:
> >>
> >> Hi Midhat,
> >>
> >> I think that the problem is that in a table definition, the number of
> >> table headers and fields in each row must be the same.
> >> To make a quick test you can try to remove the lines between my two
> >> comments below:
> >>
> >>
> >> Midhat Ali wrote:
> >> > I am trying to make a PDF report for the BOM. I converted a segment
> of
> >> > BomSimulation.ftl to BimSimulation.fo.ftl. heres the file
> >> >
> >> > <?xml version="1.0" encoding="UTF-8"?>
> >> >  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
> >> >   <fo:layout-master-set>
> >> >
> >> >   <fo:simple-page-master
> >> >   margin-right="15mm" margin-left="15mm"
> >> >   margin-bottom="15mm" margin-top="15mm"
> >> >   page-width="210mm" page-height="297mm"
> >> >   master-name="bookpage">
> >> >   <fo:region-body region-name="bookpage-body"
> >> >
> >> >   margin-bottom="5mm" margin-top="5mm" />
> >> >   </fo:simple-page-master>
> >> >   </fo:layout-master-set>
> >> >   <fo:page-sequence master-reference="bookpage">
> >> >   <fo:title>Hello world example</fo:title>
> >> >
> >> >   <fo:flow flow-name="bookpage-body">
> >> >   <fo:block>
> >> >
> >> > <#-- <#if requestParameters.lookupFlag?default("N") == "Y"> -->
> >> >
> >> >
> >> > sample text
> >> >
> >> >      <fo:table>
> >> >      <fo:table-column column-width="1in"/>
> >> >       <fo:table-column column-width="1in"/>
> >> >        <fo:table-column column-width="1in"/>
> >> >        <fo:table-column column-width="1in"/>
> >> >        <fo:table-column column-width="1in"/>
> >> >        <fo:table-column column-width="1in"/>
> >> >        <fo:table-column column-width="1in"/>
> >> >      <fo:table-body>
> >> >
> >> >        <fo:table-row>
> >> >          <fo:table-cell>col 1${uiLabelMap.ManufacturingProductLevel
> >> > }</fo:table-cell>
> >> >          <fo:table-cell>${uiLabelMap.ProductProductId
> }</fo:table-cell>
> >> >          <fo:table-cell>---</fo:table-cell>
> >> >
> >> <fo:table-cell>${uiLabelMap.ProductProductName}</fo:table-cell>
> >> >          <fo:table-cell>${uiLabelMap.CommonQuantity}</fo:table-cell>
> >> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentCost
> >> > }</fo:table-cell>
> >> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentValue
> >> > }</fo:table-cell>
> >> >        </fo:table-row>
> >>
> >> REMOVE FROM HERE
> >>
> >> >        <fo:table-row>
> >> >          <fo:table-cell></fo:table-cell>
> >> >        </fo:table-row>
> >> >        <#if tree?has_content>
> >> >          <#assign rowClass = "viewManyTR2">
> >> >          <#list tree as node>
> >> >            <#-- toggle the row color -->
> >> >            <#if rowClass == "viewManyTR2">
> >> >              <#assign rowClass = "viewManyTR1">
> >> >            <#else>
> >> >              <#assign rowClass = "viewManyTR2">
> >> >            </#if>
> >> >          </#list>
> >> >        <#else>
> >> >          <fo:table-row>
> >> >            <fo:table-cell>${uiLabelMap.CommonNoElementFound
> >> > }.</fo:table-cell>
> >> >          </fo:table-row>
> >> >        </#if>
> >>
> >> TO HERE
> >>
> >>
> >> >      </fo:table-body>
> >> >      </fo:table>
> >> >
> >> > <#-- </#if> -->
> >> >
> >> > </fo:block>
> >> >   </fo:flow>
> >> >   </fo:page-sequence>
> >> >
> >> >  </fo:root>
> >> >
> >> > It just prints the text before table
> >> > "sample text"
> >> > but does not print even the tabl headers. Please help
> >> >
> >>
> >> Does it works?
> >>
> >> Jacopo
> >>
> >
>
>

Re: XSLFO Problem

Posted by Jacopo Cappellato <ti...@sastau.it>.
Have a look at the error log (framework/logs/ofbiz.log): you should find 
there the reason of this problem.
If you cannot find it, please zip the file and send it to me so that I 
can have a look

Jacopo


Midhat Ali wrote:
> Hi Jacopo
> 
> i did as you said. it still doesnt work
> 
> On 7/29/06, Jacopo Cappellato <ti...@sastau.it> wrote:
>>
>> Hi Midhat,
>>
>> I think that the problem is that in a table definition, the number of
>> table headers and fields in each row must be the same.
>> To make a quick test you can try to remove the lines between my two
>> comments below:
>>
>>
>> Midhat Ali wrote:
>> > I am trying to make a PDF report for the BOM. I converted a segment of
>> > BomSimulation.ftl to BimSimulation.fo.ftl. heres the file
>> >
>> > <?xml version="1.0" encoding="UTF-8"?>
>> >  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
>> >   <fo:layout-master-set>
>> >
>> >   <fo:simple-page-master
>> >   margin-right="15mm" margin-left="15mm"
>> >   margin-bottom="15mm" margin-top="15mm"
>> >   page-width="210mm" page-height="297mm"
>> >   master-name="bookpage">
>> >   <fo:region-body region-name="bookpage-body"
>> >
>> >   margin-bottom="5mm" margin-top="5mm" />
>> >   </fo:simple-page-master>
>> >   </fo:layout-master-set>
>> >   <fo:page-sequence master-reference="bookpage">
>> >   <fo:title>Hello world example</fo:title>
>> >
>> >   <fo:flow flow-name="bookpage-body">
>> >   <fo:block>
>> >
>> > <#-- <#if requestParameters.lookupFlag?default("N") == "Y"> -->
>> >
>> >
>> > sample text
>> >
>> >      <fo:table>
>> >      <fo:table-column column-width="1in"/>
>> >       <fo:table-column column-width="1in"/>
>> >        <fo:table-column column-width="1in"/>
>> >        <fo:table-column column-width="1in"/>
>> >        <fo:table-column column-width="1in"/>
>> >        <fo:table-column column-width="1in"/>
>> >        <fo:table-column column-width="1in"/>
>> >      <fo:table-body>
>> >
>> >        <fo:table-row>
>> >          <fo:table-cell>col 1${uiLabelMap.ManufacturingProductLevel
>> > }</fo:table-cell>
>> >          <fo:table-cell>${uiLabelMap.ProductProductId}</fo:table-cell>
>> >          <fo:table-cell>---</fo:table-cell>
>> >          
>> <fo:table-cell>${uiLabelMap.ProductProductName}</fo:table-cell>
>> >          <fo:table-cell>${uiLabelMap.CommonQuantity}</fo:table-cell>
>> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentCost
>> > }</fo:table-cell>
>> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentValue
>> > }</fo:table-cell>
>> >        </fo:table-row>
>>
>> REMOVE FROM HERE
>>
>> >        <fo:table-row>
>> >          <fo:table-cell></fo:table-cell>
>> >        </fo:table-row>
>> >        <#if tree?has_content>
>> >          <#assign rowClass = "viewManyTR2">
>> >          <#list tree as node>
>> >            <#-- toggle the row color -->
>> >            <#if rowClass == "viewManyTR2">
>> >              <#assign rowClass = "viewManyTR1">
>> >            <#else>
>> >              <#assign rowClass = "viewManyTR2">
>> >            </#if>
>> >          </#list>
>> >        <#else>
>> >          <fo:table-row>
>> >            <fo:table-cell>${uiLabelMap.CommonNoElementFound
>> > }.</fo:table-cell>
>> >          </fo:table-row>
>> >        </#if>
>>
>> TO HERE
>>
>>
>> >      </fo:table-body>
>> >      </fo:table>
>> >
>> > <#-- </#if> -->
>> >
>> > </fo:block>
>> >   </fo:flow>
>> >   </fo:page-sequence>
>> >
>> >  </fo:root>
>> >
>> > It just prints the text before table
>> > "sample text"
>> > but does not print even the tabl headers. Please help
>> >
>>
>> Does it works?
>>
>> Jacopo
>>
> 


Re: XSLFO Problem

Posted by Midhat Ali <mi...@gmail.com>.
Hi Jacopo

i did as you said. it still doesnt work

On 7/29/06, Jacopo Cappellato <ti...@sastau.it> wrote:
>
> Hi Midhat,
>
> I think that the problem is that in a table definition, the number of
> table headers and fields in each row must be the same.
> To make a quick test you can try to remove the lines between my two
> comments below:
>
>
> Midhat Ali wrote:
> > I am trying to make a PDF report for the BOM. I converted a segment of
> > BomSimulation.ftl to BimSimulation.fo.ftl. heres the file
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> >  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
> >   <fo:layout-master-set>
> >
> >   <fo:simple-page-master
> >   margin-right="15mm" margin-left="15mm"
> >   margin-bottom="15mm" margin-top="15mm"
> >   page-width="210mm" page-height="297mm"
> >   master-name="bookpage">
> >   <fo:region-body region-name="bookpage-body"
> >
> >   margin-bottom="5mm" margin-top="5mm" />
> >   </fo:simple-page-master>
> >   </fo:layout-master-set>
> >   <fo:page-sequence master-reference="bookpage">
> >   <fo:title>Hello world example</fo:title>
> >
> >   <fo:flow flow-name="bookpage-body">
> >   <fo:block>
> >
> > <#-- <#if requestParameters.lookupFlag?default("N") == "Y"> -->
> >
> >
> > sample text
> >
> >      <fo:table>
> >      <fo:table-column column-width="1in"/>
> >       <fo:table-column column-width="1in"/>
> >        <fo:table-column column-width="1in"/>
> >        <fo:table-column column-width="1in"/>
> >        <fo:table-column column-width="1in"/>
> >        <fo:table-column column-width="1in"/>
> >        <fo:table-column column-width="1in"/>
> >      <fo:table-body>
> >
> >        <fo:table-row>
> >          <fo:table-cell>col 1${uiLabelMap.ManufacturingProductLevel
> > }</fo:table-cell>
> >          <fo:table-cell>${uiLabelMap.ProductProductId}</fo:table-cell>
> >          <fo:table-cell>---</fo:table-cell>
> >          <fo:table-cell>${uiLabelMap.ProductProductName}</fo:table-cell>
> >          <fo:table-cell>${uiLabelMap.CommonQuantity}</fo:table-cell>
> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentCost
> > }</fo:table-cell>
> >          <fo:table-cell>${uiLabelMap.ManufacturingComponentValue
> > }</fo:table-cell>
> >        </fo:table-row>
>
> REMOVE FROM HERE
>
> >        <fo:table-row>
> >          <fo:table-cell></fo:table-cell>
> >        </fo:table-row>
> >        <#if tree?has_content>
> >          <#assign rowClass = "viewManyTR2">
> >          <#list tree as node>
> >            <#-- toggle the row color -->
> >            <#if rowClass == "viewManyTR2">
> >              <#assign rowClass = "viewManyTR1">
> >            <#else>
> >              <#assign rowClass = "viewManyTR2">
> >            </#if>
> >          </#list>
> >        <#else>
> >          <fo:table-row>
> >            <fo:table-cell>${uiLabelMap.CommonNoElementFound
> > }.</fo:table-cell>
> >          </fo:table-row>
> >        </#if>
>
> TO HERE
>
>
> >      </fo:table-body>
> >      </fo:table>
> >
> > <#-- </#if> -->
> >
> > </fo:block>
> >   </fo:flow>
> >   </fo:page-sequence>
> >
> >  </fo:root>
> >
> > It just prints the text before table
> > "sample text"
> > but does not print even the tabl headers. Please help
> >
>
> Does it works?
>
> Jacopo
>

Re: XSLFO Problem

Posted by Jacopo Cappellato <ti...@sastau.it>.
Hi Midhat,

I think that the problem is that in a table definition, the number of 
table headers and fields in each row must be the same.
To make a quick test you can try to remove the lines between my two 
comments below:


Midhat Ali wrote:
> I am trying to make a PDF report for the BOM. I converted a segment of
> BomSimulation.ftl to BimSimulation.fo.ftl. heres the file
> 
> <?xml version="1.0" encoding="UTF-8"?>
>  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
>   <fo:layout-master-set>
> 
>   <fo:simple-page-master
>   margin-right="15mm" margin-left="15mm"
>   margin-bottom="15mm" margin-top="15mm"
>   page-width="210mm" page-height="297mm"
>   master-name="bookpage">
>   <fo:region-body region-name="bookpage-body"
> 
>   margin-bottom="5mm" margin-top="5mm" />
>   </fo:simple-page-master>
>   </fo:layout-master-set>
>   <fo:page-sequence master-reference="bookpage">
>   <fo:title>Hello world example</fo:title>
> 
>   <fo:flow flow-name="bookpage-body">
>   <fo:block>
> 
> <#-- <#if requestParameters.lookupFlag?default("N") == "Y"> -->
> 
> 
> sample text
> 
>      <fo:table>
>      <fo:table-column column-width="1in"/>
>       <fo:table-column column-width="1in"/>
>        <fo:table-column column-width="1in"/>
>        <fo:table-column column-width="1in"/>
>        <fo:table-column column-width="1in"/>
>        <fo:table-column column-width="1in"/>
>        <fo:table-column column-width="1in"/>
>      <fo:table-body>
> 
>        <fo:table-row>
>          <fo:table-cell>col 1${uiLabelMap.ManufacturingProductLevel
> }</fo:table-cell>
>          <fo:table-cell>${uiLabelMap.ProductProductId}</fo:table-cell>
>          <fo:table-cell>---</fo:table-cell>
>          <fo:table-cell>${uiLabelMap.ProductProductName}</fo:table-cell>
>          <fo:table-cell>${uiLabelMap.CommonQuantity}</fo:table-cell>
>          <fo:table-cell>${uiLabelMap.ManufacturingComponentCost
> }</fo:table-cell>
>          <fo:table-cell>${uiLabelMap.ManufacturingComponentValue
> }</fo:table-cell>
>        </fo:table-row>

REMOVE FROM HERE

>        <fo:table-row>
>          <fo:table-cell></fo:table-cell>
>        </fo:table-row>
>        <#if tree?has_content>
>          <#assign rowClass = "viewManyTR2">
>          <#list tree as node>
>            <#-- toggle the row color -->
>            <#if rowClass == "viewManyTR2">
>              <#assign rowClass = "viewManyTR1">
>            <#else>
>              <#assign rowClass = "viewManyTR2">
>            </#if>
>          </#list>
>        <#else>
>          <fo:table-row>
>            <fo:table-cell>${uiLabelMap.CommonNoElementFound
> }.</fo:table-cell>
>          </fo:table-row>
>        </#if>

TO HERE


>      </fo:table-body>
>      </fo:table>
> 
> <#-- </#if> -->
> 
> </fo:block>
>   </fo:flow>
>   </fo:page-sequence>
> 
>  </fo:root>
> 
> It just prints the text before table
> "sample text"
> but does not print even the tabl headers. Please help
> 

Does it works?

Jacopo