JoergSch Posted November 17, 2017 Share Posted November 17, 2017 Hello.I got a XML file like this: <positionen> <position aufpos="10" seblpos="0"> <posdaten isTextpos="0"> <identnr>1206030100</identnr> <benennung lang_ext="de_de"> <zeile format="ascii">Row 1</zeile> <zeile format="ascii">Row 2</zeile> </benennung> <benennung lang_ext="de_de"> <zeile format="ascii">Row 3</zeile> <zeile format="ascii">Row 4</zeile> </benennung>...[/code]The XPath of the Subreport is((net.sf.jasperreports.engine.data.JRXmlDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("/position/posdaten/benennung/zeile[position()>4]")[/code]But id does not 'find' the "Row 3" and "Row 4"...?There's also a "Print when" for the subreport:new Boolean ($F{cnt_benennung}.intValue() > 2)[/code]And if I print out $F{cnt_benennung}.intValue() it displays correct a "4"So how can I solve this to get Row 3 and 4 in the subreport? Thanks for your help,Jörg Link to comment Share on other sites More sharing options...
sanbez Posted November 17, 2017 Share Posted November 17, 2017 1. Are you sure that $F{cnt_benennung}.intValue() count a "zeile" but not "benennung" ?2. Positions for Row 2 and Row 4 equals 2 but not 4 imho3. It is not clear for me how you can "find" Row 1 and Row 2 with condition = zeile[position>4]Question unclear. Link to comment Share on other sites More sharing options...
JoergSch Posted November 19, 2017 Author Share Posted November 19, 2017 Hi sanbez.Yes, $F{cnt_benennung}.intValue() counts "zeile", it's a bit confusing description, but the definition is correct: count(/position/posdaten/benennung/zeile)If I print out the value of $F{cnt_benennung}.intValue() I got a "4" as expected.So I hoped, to get only the rows of the second node "benennung"Rows 1 and 2 shouldn't be found but skipped.But sorry, there was a copy'n'paste Error... the XPath ends with .../zeile[position()>2]For more Details:I got this report and I couldn't change, only extend the XML in this way... otherwise I would have inserted more "zeile" at the right place.But the question is the same:Why the count find more then 2 rows, but the subreport not? Thanks for your support!Jörg Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now