BIRT Exchange Forum: ResultSet Traversal Changes from 3.7.1 to 3.7.2? - BIRT Exchange Forum

Jump to content


 

No Latest Open Poll.

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

ResultSet Traversal Changes from 3.7.1 to 3.7.2? Upgrade problem Rate Topic: -----

#1 User is offline   Mike Reidy Icon

  • Newbie
  • Pip
  • Group: Members
  • Posts: 7
  • Joined: 12-April 12


Posted 12 April 2012 - 04:02 AM

Hello,

I am have written an ODA extension for use within BIRT and I have noticed something a bit odd when we recently upgraded from BIRT 3.7.1 to BIRT 3.7.2 and I was wondering if anyone could enlighten me.

In my report I have 2 data sets, data set 1 and data set 2. In my report I use data set 1 to populate rows of a table, data set 2 has a parameter that is bound to the row number of data set 1 and data set 2 in turn populates a table nested at the end of the row generated by data set 1.

Note : In the following explanation the rendering of data set 1 causes generation of result set 1 and rendering data set 2 causes generation of result set 2

With BIRT 3.7.1 I see the following when I do a preview :

result set 1 next() is called followed by complete result set 2 iteration, then followed by subsequent result set 1 next() calls and their associated result set 2 iterations. So process one row of result 1 followed by all rows of data set 2 ie

result set 1 row 1 => result set 2 row 1 (passing row 1 as parameter)
                   => result set 2 row 2 (passing row 1 as parameter)
                   => result set 2 row 3 (passing row 1 as parameter)

result set 1 row 2 => result set 2 row 1 (passing row 2 as parameter)
                   => result set 2 row 2 (passing row 2 as parameter)
                   => result set 2 row 3 (passing row 2 as parameter)

result set 1 row 3 => result set 2 row 1 (passing row 3 as parameter)
                   => result set 2 row 2 (passing row 3 as parameter)
                   => result set 2 row 3 (passing row 3 as parameter)



With BIRT 3.7.2 I see something different :

result set 1 is completely iterated and each of the result set 2 result sets are then made ie.

result set 1 row 1 
result set 1 row 2 
result set 1 row 3

result set 2 row 1 (passing row 1 as parameter)
result set 2 row 2 (passing row 1 as parameter) 
result set 2 row 3 (passing row 1 as parameter)

result set 2 row 1 (passing row 2 as parameter)
result set 2 row 2 (passing row 2 as parameter)
result set 2 row 3 (passing row 2 as parameter)

result set 2 row 1 (passing row 3 as parameter)
result set 2 row 2 (passing row 3 as parameter)
result set 2 row 3 (passing row 3 as parameter)



Now my questions;

1. which of these is this expected behavior? Are there any guarantees of the result set traversal behavior?
2. is there a way to control this behavour?
1

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users