Apart from initial data sources, I have 3 deferred data sources (load_in_script= true)
DS1: Company | Stores | Fiscal_Month | Actual_MTD | Budget_MTD
DS2: Product | Stores | Fiscal_Month | Actual_MTD | Budget_MTD
DS3: SalesArea | Stores | Fiscal_Month | Actual_MTD | Budget_MTD
Based on the filter values (selected by the user using checkbox/dropdown) on each of these dimensions, these datasources need to be refreshed independent of each other.
Let us go with the assumptions that these datasources will retrieve more than 2 lakh records each, if not filtered appropriately.
As per understanding there are 2 methods to filter out data (setVariable, setFilter)
- As per this link http://scn.sap.com/community/businessobjects-design-studio/blog/2014/03/27/design-studio-performance-implications-of- variables both these functions does a round trip to BW
- Moreover loadDataSource(); method should be called before setVariable() or setFilter(), which may load 2+ lakh records into the data source before appropriate filtering. This may degrade the performance
Please suggest which is the right method to filter data from these deferred datasources ?
Also, the requirement is filter on multiple dimensions. But both these filter functions do accept only one dimension at a time. Does it mean it makes 3 round trip for below statements
DS_1.setFilter("Company","C001")
DS_1.setFilter("Stores","S001,S002,s003")
DS_1.setFilter("Stores","012.2015")
Ref: