Forum Discussion
If statement (greater than) different tables
Hi -
Been pounding my head against this for weeks.. hopefully someone can help. I'm trying to calculate whether or not we've placed PO's at or before the required lead time.
I have 3 tables:
Vendor
PurchaseOrderHeader
PurchaseOrderDetail
The StandardLeadTime column is in the Vendor Table
and the Lead Time on PO column is a calculated colum in the PurchaseOrderDetail table
Hi Anonymous ,
Model 1
Result1
Model2
Result2
Try to create a measure like this.
Measure 2 = VAR x = CALCULATE( SUM(Vendor[Value]), FILTER( Vendor, Vendor[ItemCode] = SELECTEDVALUE(Vendor[ItemCode])) ) RETURN IF( SELECTEDVALUE(PurchaseOrderDetail[Value]) >= x, "Yes", "No" )Or Create a calculated column like this.
Column 2 = VAR x = CALCULATE( SUM(Vendor[Value]), ALLEXCEPT(PurchaseOrderDetail, PurchaseOrderDetail[ItemCode]) ) RETURN IF( PurchaseOrderDetail[Value] >= x, "yES", "nO" )Best regards,
Lionel ChenIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
4 Replies
- d_gosbell
Super User
Anonymous wrote:
The StandardLeadTime column is in the Vendor Table
Your relationship is going in the wrong direction to be able to use RELATED() against the vendor table. The way you have the relationships modelled is effectively saying that one purchase order line can be related to many different vendors. This does not sound correct to me.
If you edit this relationship and change the cardinality from many-to-one to one-to-many (or vis-versa) this will switch the From/To columns and the RELATED() function will then be able to function as you expect.
- mahoneypat
Microsoft Employee
Is it a 1:many relationship between Vendor and OrderDetail tables? Is itemcode the same data type on both sides of the relationship? If so, Related should work. If not, you'll need to change it to that or use RELATEDTABLE() and an aggregation.
Regards,
Pat
- v-lionel-msft
Community Support
Hi Anonymous ,
Model 1
Result1
Model2
Result2
Try to create a measure like this.
Measure 2 = VAR x = CALCULATE( SUM(Vendor[Value]), FILTER( Vendor, Vendor[ItemCode] = SELECTEDVALUE(Vendor[ItemCode])) ) RETURN IF( SELECTEDVALUE(PurchaseOrderDetail[Value]) >= x, "Yes", "No" )Or Create a calculated column like this.
Column 2 = VAR x = CALCULATE( SUM(Vendor[Value]), ALLEXCEPT(PurchaseOrderDetail, PurchaseOrderDetail[ItemCode]) ) RETURN IF( PurchaseOrderDetail[Value] >= x, "yES", "nO" )Best regards,
Lionel ChenIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- AnonymousNot applicable
This worked! Your model 2 calculated column worked. Thank you!