如果我的理解正确,您希望在每个月底统计手头的车辆数量。这可以通过计算购买日期小于或等于所选月末的车辆数并减去销售日期小于或等于所选月末的车辆数来计算。
您可以在 Vehicle[PurchaseDate] 和 Date[Date] 之间创建活动关系。然后根据 Vehicles[SaleDate] 和 Date[Date] 创建一个非活动关系。
您可以使用类似这样的度量:
Inventory Count =
VAR MaxDate =
MAX ( 'Date'[Date] )
VAR MinDate =
CALCULATE ( MIN ( 'Date'[Date] ), ALL ( 'Date' ) )
VAR Purch =
CALCULATE (
COUNT ( 'Vehicles'[VehicleID] ),
DATESBETWEEN ( 'Date'[Date], MinDate, MaxDate )
)
VAR Sales =
CALCULATE (
COUNT ( 'Vehicles'[VehicleID] ),
USERELATIONSHIP ( 'Date'[Date], Vehicles[Sale Date] ),
DATESBETWEEN ( 'Date'[Date], MinDate, MaxDate )
)
VAR MaxPurDt =
CALCULATE ( MAX ( 'Vehicles'[Purchase Date] ), ALL ( 'Vehicles' ) )
VAR MaxSlDt =
CALCULATE ( MAX ( 'Vehicles'[Sale Date] ), ALL ( 'Vehicles' ) )
RETURN
IF (
MIN ( 'Date'[Date] ) <= MaxPurDt
|| MIN ( 'Date'[Date] ) <= MaxSlDt,
Purch - Sales
)
此度量获取累计购买次数和累计销售次数,然后将它们相减。 IF 检查是为了避免累积总计传播超出 Vehicle 表中的最大日期。
我不知道如何解释您显示的仅 3 个月的预期结果。这将产生与您所拥有的答案相同的答案,但没有对表格应用过滤器,它从 2016 年 3 月 31 日(首次销售日期)开始。
编辑:按照您的想法,可能有一种更有效的方法,但目前它正在逃避我。