It's all about the answers!

Ask a question

Why do data set results differ when adding/removing output columns with BIRT?


Anthony Van Drunen (622) | asked Apr 25 '14, 8:31 a.m.
For some custom reporting, I'm trying to build some data sets based on WORKITEM_CHNGS, but I'm seeing unexpected behaviour when defining my data sets in BIRT. When I change which columns appear in the output (in Fact Information), the actual number of results changes (in Preview Results). This issue is likely related to this other old, unanswered question: BIRT question - Data Set acting strange. I assume that either there is some essential knowledge I am missing, or potentially this is a bug with the application or data. I am using version 4.0 of RTC.

Here is an example of some unexpected behaviours; all examples are filtered by a specific iteration.

With the following output columns, I get 132 records (which I assume is a correct count given the iteration). I cannot remove any column (i.e. use 5 columns) without the results set becoming zero; however, I can replace a column with a different one (e.g. STATE_NAME to STATE_GROUP) and get the 132 records. Is there a minimum number of columns required to define a data set?
WI_ID
PROJECT_AREA_NAME
ITERATION_NAME
CONTRIBUTOR_NAME
WI_TYPE
STATE_NAME

On a similar note, if I add a column to the above set (i.e. seven columns), my record count decreases. For example, adding STATE_GROUP to the above set gives no results. I have also seen combinations that produce subset results, e.g. a result set of 7 (from the 132) with the above columns plus DATE and STATE_GROUP (i.e. eight columns). What is going on here?

2 answers



permanent link
Rafik Jaouani (5.0k16) | answered Apr 25 '14, 8:53 a.m.
JAZZ DEVELOPER
Hi Anthony, please raise a defect against RTC and specify information like the RTC version number, database vendor,  and attach the BIRT report causing this issue. I am assuming you are also using a data warehouse and not the legacy datamart.

Comments
Anthony Van Drunen commented Apr 25 '14, 2:35 p.m.

permanent link
Rafik Jaouani (5.0k16) | answered Apr 25 '14, 3:55 p.m.
JAZZ DEVELOPER
At first glance this looks like bug but it is not.

Changing which columns to select will alter the order in which the data gets returned by the query. The BIRT editor will only fetch 500 values (can be changed but RTC will still impose a 1000 row limit). So you are getting 500 rows back at random and your data set is applying a filter (ITERATION_NAME = 'Sprint 1') which gets applied after the fact on those random 500 records. Of course the result will be random.

You should never trust the results when you use BIRT preview. Just use preview to help you design the report and fix things like layout. To really see the results. You will need to deploy your report in RTC. But there also you have to be careful and not deploy a poorly written report that fetches too much data.

BIRT filters are bad since they get applied after the full result set was fetched. Use data set parameters instead.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.