Jump to content
We've recently updated our Privacy Statement, available here ×

xPath query problem


pedro.riky

Recommended Posts

 Hi all

   i have a report with a subreport.

   The sub report is printing in a groupfooter of the master report.

   I passa, to the master, a org.w3c.dom.Document that rappresent the subreport data.

 

   I call the sub report in the following mode :

   


   <subreport>
                    <reportElement isPrintRepeatedValues="true" x="0" y="0" width="507" height="10"
                        isRemoveLineWhenBlank="true" backcolor="#ffcc99"> </reportElement>
                    <subreportParameter name="REPORT_DATA_SOURCE">
                        <subreportParameterExpression>
                           <![CDATA[new net.sf.jasperreports.engine.data.JRXmlDataSource( $P{subTotale},"/totali/totale[@giro='" +
                                          $F{giro}+ "']/tot-cau")]]>
                       </subreportParameterExpression>
                    </subreportParameter>
                    <subreportParameter name="XML_DATE_PATTERN">
                        <subreportParameterExpression>$P{XML_DATE_PATTERN}</subreportParameterExpression>
                    </subreportParameter>
                    <subreportParameter name="XML_NUMBER_PATTERN">
                        <subreportParameterExpression>$P{XML_NUMBER_PATTERN}</subreportParameterExpression>
                    </subreportParameter>
                    <subreportParameter name="XML_LOCALE">
                        <subreportParameterExpression>$P{XML_LOCALE}</subreportParameterExpression>
                    </subreportParameter>
                    <subreportParameter name="XML_TIME_ZONE">
                        <subreportParameterExpression>$P{XML_TIME_ZONE}</subreportParameterExpression>
                    </subreportParameter>
                    <subreportParameter name="pageNumberMaster">
                        <subreportParameterExpression>$V{PAGE_NUMBER}</subreportParameterExpression>
                    </subreportParameter>
                    <subreportExpression class="net.sf.jasperreports.engine.JasperReport"
                        >$P{subReport}</subreportExpression>
                </subreport>
 
   

    Then the query of the subreport is :

               <queryString language="xPath"><![CDATA[totali/totale/tot-cau]]></queryString>

 

   My xml data :

   


<totali>
    <totale giro="1">
        <tot-cau>
            <cod-cau-tot>5</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Resa Periodici Esteri</desc-cau-tot>
            <importo-cau>9,74 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>201</cod-cau-tot>
            <tipo-cau-tot>1</tipo-cau-tot>
            <desc-cau-tot>NS.FATTURA 20%</desc-cau-tot>
            <importo-cau>6.254,70 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>52</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Fornitura Periodici esteri</desc-cau-tot>
            <importo-cau>15,10-</importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>11</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>RESA X CESS.ATTIVITA'</desc-cau-tot>
            <importo-cau>79,18 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>38</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Diff. resa quotidiani</desc-cau-tot>
            <importo-cau>169,32 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>76</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Add.lavorazione extra</desc-cau-tot>
            <importo-cau>0,00 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>54</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Fornitura Quot./Illus.</desc-cau-tot>
            <importo-cau>30,54 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>2</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Resa Quotidiani</desc-cau-tot>
            <importo-cau>28,26 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>1</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Versamento</desc-cau-tot>
            <importo-cau>23.319,64 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>8</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Integrazione resa periodici</desc-cau-tot>
            <importo-cau>210,16 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>3</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Resa PERIODICI</desc-cau-tot>
            <importo-cau>353,72 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>46</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Versamento RID</desc-cau-tot>
            <importo-cau>19.439,04 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>4</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Resa Periodici esteri</desc-cau-tot>
            <importo-cau>332,32 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>41</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>ACCREDITO RESA FUORI BOLLA</desc-cau-tot>
            <importo-cau>3,00 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>51</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Fornitura PERIODICI</desc-cau-tot>
            <importo-cau>26.464,00 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>108</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Insoluto RID</desc-cau-tot>
            <importo-cau>200,00 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>50</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>Fornitura Quotidiani</desc-cau-tot>
            <importo-cau>90,10 </importo-cau>
        </tot-cau>
        <tot-cau>
            <cod-cau-tot>86</cod-cau-tot>
            <tipo-cau-tot>10</tipo-cau-tot>
            <desc-cau-tot>ADDEBITO CONTO DEPOSITO</desc-cau-tot>
            <importo-cau>21.205,66 </importo-cau>
        </tot-cau>
    </totale>
    </totali>
    

 

The data sometime are printed, sometime no sometime partially.

Sure i do an error in one of the xpath query, but i try many solution without find the right, any idea?

 

 

Link to comment
Share on other sites

  • Replies 2
  • Created
  • Last Reply

Top Posters In This Topic

If i put the subreport in the summary it works, is a groupfooter problem.any idea?

 

I try to debug Jasperreport library, and i see when xPathExecuter.selectNodeList(document,selectExpression) is called 

it return the right number of node but the first node in the list is not the first node in the xml file thath rappresent the xPath expression.

How i can get the nodes in the right order?

 



Post Edited by pedro.riky at 07/31/2012 10:01
Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...