Business Query DataBased Filter Use Cases

A data based filter is applied to create a set of the cross join of both DATE and CARS that is the fact that the value in [Measures].[Sales_Sum] is greater than 20000.

 

 

MDX Generated:

 

WITH SET [&1DTE] AS '.[DTE].MEMBERS' 

SET [&1CARS] AS '[CARS].[CAR].MEMBERS' 

MEMBER [Measures].[&1SALES_SUM] AS '[Measures].[SALES_SUM]' 

SELECT FILTER(CROSSJOIN({[&1DTE]}, {[&1CARS]}), [Measures].[SALES_SUM] > 20000) on rows, {[Measures].[&1SALES_SUM]} ON COLUMNS FROM MDDBCARS

 

Sample Code to use:

 

 

int val = 20000;

Integer vall = new Integer(val);

Object value = (Object) vall;

List measuresNames = new ArrayList();

measuresNames.add(dataItem); <<=== DataItem being SALES_SUM

ComparisonOperator operator = ComparisonOperator.COMPARE_GT;

DataSelection dataSelection = DataSelectionFactory.newDataSelection(Map);

BusinessQueryDataBasedFilter step = new BusinessQueryDataBasedFilter(measuresNames, operator, value, );