Pair Parameters

JoelOliMclean
edited February 11, 2022 in Analytics #1

Run into an issue where there are 2 defining columns in my dataset that are used to pick out the unique data. While i can get this working with 1 set of this coupled data, I have come across a problem when dealing with 2 or more sets.

Say for example I want to get a list of xbox games owned by 1 person, and a list of ps4 games owned by another.

One or both of these people own both xbox and ps4 games.

The way I'm currently working this is by matching up the ID of the person and the type of game. However if I do as above with person 1's xbox games and person 2's ps4 games, it will return both persons xbox and ps4 games.

This isn't the desired behaviour.

So what I'm looking for is a method to pass parameters to a BIRT report (with seperated run and render tasks) and couple them up somehow. My first thought was 2 arrays and to match up the iterator values but I'm unsure how to work this in BIRT, if for example I were to pass through an array of POJO objects with 2 string values for the player and the game type.

Comments

  • If I understand your requirements, the user must be able to pick specific person/console combinations. One option is to create a data set as the source for a dynamic parameter. Create a computed column in the data set that concatenates the person and console columns, i.e. "Fred Smith + xbox". Add the same computed column to the table on the report (optionally turn off the visibility of the computed column) and add a filter that is something like:

    params["parameter_name"].value.indexOf(row["computed_column"]) > -1 // syntax not tested

    .

    Warning No formatter is installed for the format ipb