Forum Discussion
Referencing a Min Quantity
- 3 years ago
OK, then I'd assume [Cust] doesn't need to be propagated since the customer dimension should be filtering them both the same and we just need to apply the Item and UOM filtering from VLE to SalesPrice.
Try this
Qty_Price = VAR _ItemQty = SELECTEDVALUE ( VLE[Qty] ) VAR _Item = SELECTEDVALUE ( VLE[Item] ) VAR _UOM = SELECTEDVALUE ( VLE[UOM] ) VAR _MinQty = CALCULATE ( MIN ( SalesPrice[Min_Qty] ), SalesPrice[Min_Qty] >= _ItemQty, SalesPrice[Item] = _Item, SalesPrice[UOM] = _UOM ) RETURN CALCULATE ( SELECTEDVALUE ( SalesPrice[Unit_Price] ), SalesPrice[Min_Qty] = _MinQty, SalesPrice[Item] = _Item, SalesPrice[UOM] = _UOM )Or you could also use TREATAS:
Qty_Price = VAR _ItemQty = SELECTEDVALUE ( VLE[Qty] ) VAR _MinQty = CALCULATE ( MIN ( SalesPrice[Min_Qty] ), SalesPrice[Min_Qty] >= _ItemQty, TREATAS ( VALUES ( VLE[Item] ), SalesPrice[Item] ), TREATAS ( VALUES ( VLE[UOM] ), SalesPrice[UOM] ) ) RETURN CALCULATE ( SELECTEDVALUE ( SalesPrice[Unit_Price] ), SalesPrice[Min_Qty] = _MinQty, TREATAS ( VALUES ( VLE[Item] ), SalesPrice[Item] ), TREATAS ( VALUES ( VLE[UOM] ), SalesPrice[UOM] ) )
Here's one way to do this
Qty_Price =
VAR _ItemQty = SELECTEDVALUE ( VLE[Qty] )
VAR _MinQty = CALCULATE ( MIN ( SalesPrice[Min_Qty] ), SalesPrice[Min_Qty] >= _ItemQty )
RETURN
CALCULATE (
SELECTEDVALUE ( SalesPrice[Unit_Price] ),
SalesPrice[Min_Qty] = _MinQty
)
Note: This assumes the Cust, Item, and UOM columns in both tables are both filtered by the same dimension table(s). If they aren't related this way, then you'll need to propagate the filtering in the measure too.
For a couple of other methods, you may be interested in this similar question:
https://stackoverflow.com/questions/52525377/return-top-value-ordered-by-another-column
Hi Alexis!
Thank you! Can you show how the filtering would work?
- AlexisOlson3 years agoSuper User
It depends on how your table relationships and evaluation context are set up. What does your relationship diagram look like? Are you building a measure to use in a visual or a calculated column?
- Anonymous3 years agoNot applicable
Here are my current relationships
The Sales_Code is Customer No.
I planned on building a measure to use in a visual
- AlexisOlson3 years agoSuper User
OK, then I'd assume [Cust] doesn't need to be propagated since the customer dimension should be filtering them both the same and we just need to apply the Item and UOM filtering from VLE to SalesPrice.
Try this
Qty_Price = VAR _ItemQty = SELECTEDVALUE ( VLE[Qty] ) VAR _Item = SELECTEDVALUE ( VLE[Item] ) VAR _UOM = SELECTEDVALUE ( VLE[UOM] ) VAR _MinQty = CALCULATE ( MIN ( SalesPrice[Min_Qty] ), SalesPrice[Min_Qty] >= _ItemQty, SalesPrice[Item] = _Item, SalesPrice[UOM] = _UOM ) RETURN CALCULATE ( SELECTEDVALUE ( SalesPrice[Unit_Price] ), SalesPrice[Min_Qty] = _MinQty, SalesPrice[Item] = _Item, SalesPrice[UOM] = _UOM )Or you could also use TREATAS:
Qty_Price = VAR _ItemQty = SELECTEDVALUE ( VLE[Qty] ) VAR _MinQty = CALCULATE ( MIN ( SalesPrice[Min_Qty] ), SalesPrice[Min_Qty] >= _ItemQty, TREATAS ( VALUES ( VLE[Item] ), SalesPrice[Item] ), TREATAS ( VALUES ( VLE[UOM] ), SalesPrice[UOM] ) ) RETURN CALCULATE ( SELECTEDVALUE ( SalesPrice[Unit_Price] ), SalesPrice[Min_Qty] = _MinQty, TREATAS ( VALUES ( VLE[Item] ), SalesPrice[Item] ), TREATAS ( VALUES ( VLE[UOM] ), SalesPrice[UOM] ) )