我试图找到一种方法来选择特定的ID,有自己的价值观阅读和查找所有的产品在不同的ID相同的名称和繁殖的第一个ID X.values到其他产品的不同ID的变量。
因此,例如,我有以下数据:
我想选择ID = 1234查找相关联的1234产品的所有卷找到所需的产品与其他标识相同的名称和ID = 1234,每个产品的体积乘以成的同名产品X.Value其它ID,如下图所示:
谢谢
我试图找到一种方法来选择特定的ID,有自己的价值观阅读和查找所有的产品在不同的ID相同的名称和繁殖的第一个ID X.values到其他产品的不同ID的变量。
因此,例如,我有以下数据:
我想选择ID = 1234查找相关联的1234产品的所有卷找到所需的产品与其他标识相同的名称和ID = 1234,每个产品的体积乘以成的同名产品X.Value其它ID,如下图所示:
谢谢
在计算列,您可以使用LOOKUPVALUE
找到ID为1234的音量和相应的产品-然后选择如何基于匹配值是否被退回或不计算你的输出:
New Column =
VAR LookupID = 1234
VAR LookupVolume =
LOOKUPVALUE (
Table1[Volume],
Table1[ID], LookupID,
Table1[Product], Table1[Product]
)
RETURN
Table1[X.Value] & " * " &
IF (
ISBLANK ( LookupVolume ),
Table1[Volume],
LookupVolume
)
样例PBIX文件: https://pwrbi.com/so_55916210/
更复杂的一项措施 - 不完全清楚如何打算使用它,但这种方法创造了ID值的列表,一个单独的表,被用作切片机:
ID List = DISTINCT ( Table1[ID] )
然后我们可以使用的措施:
New Measure =
SUMX (
Table1,
VAR LookupID =
IF (
HASONEVALUE ( 'ID List'[ID] ),
VALUES ( 'ID List'[ID] ),
BLANK()
)
VAR LookupProduct =
IF (
HASONEVALUE ( Table1[Product] ),
VALUES ( Table1[Product] ),
BLANK()
)
VAR EffectiveVolume =
CALCULATE (
SUM ( Table1[Volume] ),
ALL ( Table1 ),
Table1[ID] = LookupID,
Table1[Product] = LookupProduct
)
RETURN
Table1[X.Value] *
IF (
ISBLANK ( EffectiveVolume ),
Table1[Volume],
EffectiveVolume
)
)
更新PBIX文件: https://pwrbi.com/so_55916210-2/