Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Using Filter for DataSet2 depending on valucolumns on DataSet1
samirkarve
<p>Hello,</p>
<p> </p>
<p>I have created two databases and need to populate the data in Dataset2 depending on data in Dataset1 </p>
<p>I am using flat data source for both datasets.</p>
<p>DataSet1 has columns "Premise", "RollNumber" - (Approximately 10000 entries)</p>
<p>I have different premises path, hence I have applied filter with Report Parameter to get rows with specific premise path. (here we have multiple RollNumbers with same premise path)</p>
<p>DataSet2 has columns "RollNumber", "DateTime", "Readings"</p>
<p> </p>
<p>Now scenario is</p>
<p>1. first I want to fill dataset1 with all the rows in csv file.</p>
<p>2. Depending upon RollNumbers column, I want to apply a filter on Dataset2 such that get the data only for specific RollNumbers which are populated in Dataset1</p>
<p> </p>
<p>What I have tried till date -</p>
<p>1. I have created filter for Premise using Report parameter</p>
<p> </p>
<p>I want to know how can I do the further step for filtering Dataset2 data depending on RollNumbers from DataSet1.</p>
<p> </p>
<p>Regards</p>
<p>Samir</p>
Find more posts tagged with
Comments
pricher
<p>Hi,</p>
<p> </p>
<p>Use a Joint Data Set to join Dataset2 with Dataset1 on column RollNumber. Then build your report using the Joint Data set.</p>
<p> </p>
<p>
Matthew L.
<p>Perhaps one of these examples could be helpful:</p>
<p> </p>
<p>DynamicDataSetColumnsWithDynamicTable:</p>
<p><a data-ipb='nomediaparse' href='
http://developer.actuate.com/community/forum/index.php?/topic/35563-dynamic-column-generation-in-scripted-dataset-birt/#entry131919'>http://developer.actuate.com/community/forum/index.php?/topic/35563-dynamic-column-generation-in-scripted-dataset-birt/#entry131919</a></p>
;
<p> </p>
<p>DynamicScriptedDataSetWithColumnNamesBasedOnAnotherDataSetResult:</p>
<p><a data-ipb='nomediaparse' href='
http://developer.actuate.com/community/forum/index.php?/topic/35563-dynamic-column-generation-in-scripted-dataset-birt/#entry132072'>http://developer.actuate.com/community/forum/index.php?/topic/35563-dynamic-column-generation-in-scripted-dataset-birt/#entry132072</a></p>
;
samirkarve
<p>Hi Pricher,</p>
<p> </p>
<p>thanks for your response.</p>
<p>I tried with the way you had suggested to create join dataset, but issue still remains because of huge database entries. Report is not getting generated. The approach which I talked in my first post was thought with considering performance issue. </p>
<p>As the DataSet2 is big enough with all the entries (Approximately 438000000 row entries in csv file), I would like to first load DataSet1 and depending upon the unique RollNumbers from DataSet1 - "RollNumber" column, select row entries from DataSet2.</p>
<p>For example:</p>
<p>DataSet1 is loaded with entries:</p>
<p>Premise RollNumber</p>
<p>Pr1 M0</p>
<p>Pr1/Pr M3</p>
<p>Pr2 M5</p>
<p>Pr4 M10</p>
<p> </p>
<p>Now in DataSet2 there may be various entries for M0/M3/M5/M10 along with other entries.</p>
<p>Now to tackle with performance issue, I need to load only those entries which has RollNumbers M0,M2,M5,M10 so as to reduce the DataSet2 size.</p>
<p>For this what I am thinking of is creating report string array variable which can be loaded with all the unique RollNumber entries when DataSet1 is loaded.</p>
<p>Use this string array variable as filter for loading DataSet2 and get specific entries in DataSet2.</p>
<p> </p>
<p>Logically I think this would give better performance results, but I am not aware of query syntax for comparing report variable dynamically when loading DataSet2. Also I want to know whether my approach is feasible or their is some other better way to handle such performance related issues. </p>
<p> </p>
<p>thanks</p>
<p>Samir</p>
samirkarve
<p>Hi Matthew,</p>
<p> </p>
<p>thanks for your response. I went through both the links and found it helpful as knowledge perspective. But this has not yet solved my problem. Could you please refer to my previous post where I had explained my requirement briefly. Please suggest simple and better way to resolve it.</p>
<p> </p>
<p>thanks</p>
<p>Samir</p>
samirkarve
<p>Hello Matthew,</p>
<p> </p>
<p>Did you check my above post. Please suggest me approach to solve the issue.</p>
<p> </p>
<p>thanks</p>
<p>Samir</p>
jfranken
<p>Is there any chance you could move the data to a RDBMS? Then you could create an Index on the RollNumber field and do a join on the tables. The index will reduce the number of rows that need to be compared for each join on a RollNumber value from 438000000 to about 25.</p>
samirkarve
<p>Hi jfranken,</p>
<p> </p>
<p>thanks for your reply. Unfortunately we cannot move data to RDBMS. I need to find out the solution with available constraints.</p>
<p> </p>
<p>thanks</p>
<p>Samir Karve</p>