我正在尝试创建一个数据模型,其中有销售人员销售各种不同的产品。问题在于每种产品的层级结构。有些产品会根据销售情况获得不同的积分。根据销售额,有些可能有两到三个等级。其他产品可能只是一个平稳的支出。然后,销售人员根据他收到的积分数量等级,将他的最终界限作为他的积分的百分比来获得
产品1
员工支付
我不确定如何在数据模型中构建它并使用DAX公式计算
感谢您的帮助
答案 0 :(得分:0)
创建新的计算列 让我们说, 现在你将拥有 体积计算列 (IF(体积> = 100然后10体积> = 200然后20) 人1产品1 100 人2产品2 200
人X产品X 300
然后根据此计算列添加一个计算列,以获得体积百分比。
如果有帮助,请将答案标记为正确。
答案 1 :(得分:0)
尝试以下方法:
数据结构
产品:
销售:
数据模型
Products
和Sales
)Product[Product]
<强> DAX 强>
这是丑陋的部分:在sales表中,作为名为Points
的新计算列。使用这个DAX公式:
=IF(Sales[Volume]<RELATED(Products[Volume Tier 1]),0,
IF(Sales[Volume]<RELATED(Products[Volume Tier 2]),RELATED(Products[Points Tier 1]),
IF(Sales[Volume]<RELATED(Products[Volume Tier 3]),RELATED(Products[Points Tier 2]),
IF(Sales[Volume]<RELATED(Products[Volume Tier 4]),RELATED(Products[Points Tier 3]),
IF(Sales[Volume]<RELATED(Products[Volume Tier 5]),RELATED(Products[Points Tier 4]),
IF(Sales[Volume]>=RELATED(Products[Volume Tier 5]),RELATED(Products[Points Tier 5])))))))
使用以下公式添加新度量:TotalPoints:=SUM(Sales[Points])
现在您可以确定每个交易/销售人员/等的点数。并在后续步骤中使用它。
您可以在Product表中留下不相关的层,并使用ISBLANK
函数扩展您的公式,而不是使用真正的Volume Tiers。
答案 2 :(得分:-2)
我不知道DAX,但这将处理Excel公式。
假设列volume
中有A
,要计算points
列中的B
:
$B2 = MIN(10*INT($A2/100),30)
然后我假设您要在其他地方汇总points
(让我们在专栏D
中说明)并在payout
列中计算E
。我这样做的首选方法是在某处创建一个小型查找表。它看起来像这样:
Points Payout Rate
0 0
100 0.2
200 0.5
300 1.5
给查询表一个名称,例如PayoutRates
。查找支付率并计算支出的公式为:
=$D2 * VLOOKUP($D2,PayoutRates,2,TRUE)
或者,您可以使用嵌套的IF
语句来获得相同的结果:
=$D2 * IF($D2<100,0,IF($D2<200,0.2,IF($D2<300,0.5,1.5)))