Forum Discussion
justinh
2 years agoAdvocate IV
Using SWITCH within KEEPFILTERS and IN?
Is it possible to switch out the list inside of a KEEPFILTERS IN argument? I can't seem to get it to work. I want my end user to be able to make a parameter selection, and that selection changes...
- 2 years ago
This version even keeps the "KeepFilters" in place:
VAR _UserSelection= [Selected Conversion Type] VAR _Table = CALCULATETABLE( SUMMARIZE( b_Assortment_Bridge, b_Assortment_Bridge[Inventory_Key], b_Assortment_Bridge[Assortment StdCost Ratio], b_Assortment_Bridge[Assortment Flag] ), KEEPFILTERS( SWITCH( _UserSelection, "Both", b_Assortment_Bridge[Assortment Flag] IN {"", "A", "B"}, "A Only", b_Assortment_Bridge[Assortment Flag] IN {"", "A"}, "B Only", b_Assortment_Bridge[Assortment Flag] IN {"", "B"}, "Off", b_Assortment_Bridge[Assortment Flag] IN {""} ) ) ) VAR _Measure = SUMX( _Table, CALCULATE( [.Sales - Selling SKUs] ) * [Assortment StdCost Ratio] ) RETURN _Measure
justinh
2 years agoAdvocate IV
This was the cleanest I could make the code and have it still work as expected.
justinh
2 years agoAdvocate IV
This version even keeps the "KeepFilters" in place:
VAR _UserSelection= [Selected Conversion Type]
VAR _Table =
CALCULATETABLE(
SUMMARIZE(
b_Assortment_Bridge,
b_Assortment_Bridge[Inventory_Key],
b_Assortment_Bridge[Assortment StdCost Ratio],
b_Assortment_Bridge[Assortment Flag]
),
KEEPFILTERS(
SWITCH(
_UserSelection,
"Both",
b_Assortment_Bridge[Assortment Flag] IN {"", "A", "B"},
"A Only",
b_Assortment_Bridge[Assortment Flag] IN {"", "A"},
"B Only",
b_Assortment_Bridge[Assortment Flag] IN {"", "B"},
"Off",
b_Assortment_Bridge[Assortment Flag] IN {""}
)
)
)
VAR _Measure =
SUMX(
_Table,
CALCULATE( [.Sales - Selling SKUs] ) * [Assortment StdCost Ratio]
)
RETURN
_Measure