我喜歡慢慢地建立措施,在制定的時候。如果您願意,您可以將這些措施基本結合爲一項措施,但出於指導性目的,我更願意展示實現DAX目標的中間步驟。
創建一個返回單個key_member
的度量。我想這是文本,所以我用
AnyMember :=
LASTNONBLANK (tb2[key_member], 1)
如果它的數字,你可以使用MAX(tb2[key_member])
代替。使用什麼樣的聚合無關緊要,因爲我們只會按project_id
返回一個key_member
。
創建一個度量來過濾LastMember,所以我們只返回「PM」key_member_types。
AnyPM :=
CALCULATE ([AnyMember], tb2[key_member_type] = "PM")
如果您有連續日期表,請在日期表和tb2 [end_dt_active]之間建立關係。然後創建這個措施:
LastActivePM :=
CALCULATE (
[AnyPM],
DATESBETWEEN (
BasicCalendarEnglish[DateKey],
MIN (tb1[month_end_date]),
DATE (4000, 1, 1)
)
)
這只是過濾掉其end_dt_active
而來的tb1[month_end_date]
之前的任何預防性維護。
沒有日期表,來達到同樣的過濾器,你可以這樣做:
LastActivePM :=
CALCULATE (
[AnyPM],
FILTER (
VALUES (tb2[end_dt_active]),
tb2[end_dt_active] >= MAX (tb1[month_end_date])
)
)
取決於多少行源,第二個有可能無法表現非常好,但我猜你更多的是數百個項目的訂單,而不是數百萬美元。
是關鍵成員的文本字段?你只是想要最大值? –