Power BI之DAX神功番外篇 14.销售目标分解
一、什么是销售目标
销售目标又叫销售任务,例如,你这次数学考了40分,老师希望你下次考到60分。这60分还没有发生,是老师对你的期望,就是目标。企业中,如果你今年销售业绩很好,Boss对你明年的要求可能会更高。如果你连续多年业绩不好,你可能会被换掉。
PS:当然有特殊情况,假设你是一家500平米商场的负责人,因为其中有300平米涉嫌违章建筑被拆除,你的店面只剩下200平米,老板会酌情给你减少下一年的销售目标,但是一定不会因为你减少了60%的面积,就给你减少60%的销售目标。面积缩小,会砍掉销量低且非必要的商品,这些商品曾经在你的销售中占比是多少?例如500平米的超市,你用300平米摆放钢琴、帐篷、床(床上用品)等,这些商品在过去一年中,基本没有销售,那减少面积与销售就无关联。

如图1-1,假设你是一家公司的老板,你们公司有两家店,分别位于北京和上海两座城市。
2021年北京销售29.2万元,上海销售37.2万元,累计销售金额66.4万元
明年的销售目标不是脑袋一热拍下桌子就定了,这里面要关注的问题可多了,销售金额只是表面上的数据。
二、企业下一年总销售目标
Boss会通过企业上一年度净利润,以及新一年自己准备改革的方案,通过净利润率的调整,从营业利润中推算毛利率,从而得到新一年度的销售目标。
净利润 = 利润总额 - 所得税费用
利润总额 = 营业利润 + 补贴收入+营业外收入 - 营业外支出
所得税费用 = 应纳税所得 x 所得税税率。
Ps:这项工作考察领导者对企业的管理水平,每个人的算法不同,改革方案能否奏效也是未知数,一位合格的Boss不会什么都不做的。
三、将公司明年任务分解到各店铺
这件事,并不是单纯的看上一年度每个店铺的销售占比,再通过销售占比计算新的销售目标。如图1-1,2021年度北京占比43.97%,上海占比56.03%,如果Boss对企业制定新一年度的销售目标是700000元,按这个逻辑,北京= 700000 x 0.4397 = 307790元,上海 = 700000 x 0.5603 = 392210元。事情没有这么简单,公式是帮助计算的,但是人脑是用来思考的,这样的结果只是完成了计算,并没有思考。
Ps:各店铺的销售目标,Boss如果不是亲自制定,也是要亲自审核。否则会出现,张三定任务,他跟李四关系好,给李四少定任务,给王五多定任务的情况。一位合格的Boss,心里一定是清楚各店铺经营水平的。
【1】毛利额要找财务要,不要从服务器上自己取数
Ps:个体经营者除外,这里指的是企业
举个例子,蔬菜每天销售价格会有浮动,因为进货价格不一样,所以售价会随之变化。

如图1-2,我们先看2021/1/1日这一行,你可能会有疑问,销售25kg,售价3.98元/kg,25 x 3.98 = 99.5元,为什么等于85元? 食品用品都存在打折,到了晚上蔬菜品相不好了,就会打折出售。
我们再看2021/1/3这一行,由于2021/1/1进货100kg,2021/1/1和2021/1/2分别卖了25kg+45kg=70kg,2021/1/3进货50kg,销售50kg,那1月3日销售的这50kg中包含2021/1/1进货且没卖完的30kg和2021/1/3进货的50kg中的20kg。这就是俗称的批次问题,每个批次进价可能不同。
再看2021/1/31这一行,商品一定有丢失或损坏,蔬菜水果一定有损耗,盘点发现黄瓜实际存货重量比库存少15kg,那这15kg数量进行报损,报损金额是指进价,总价值会直接核减你的毛利额。
你会想到,报损的这15kg可能来自不同批次,这样报损都会损失在最后一个批次上? 是的,所以说,数据根本就不准,只能做参考。聪明的部门负责人,是这样做的,众所周知每年春节那个月蔬菜价格最贵,虽然每个月都有损耗,但是这个月损耗价值最高,如果没有人监督盘点,他们通常会隐瞒商品损失,待春暖花开,蔬菜价格大幅下降时,再报损,表面上看他的损耗管控做的非常好,其实毛利率是不会骗人的。
Ps:春节期间黄瓜的价格可能是7.99元/500g,春天的价格是可能1.99元/500g
这些数据都是在系统内部处理的,无需你亲自己计算。你单纯通过SQL从服务器上取数进行字段计算是不准确的。
【2】返点也是营业利润,租金是营业外收入
你将场地出租给办信用卡的、办手机卡的、卖基金、卖保险等,他会支付你一定费用。我们熟悉的京东商城,有自营商品,有第三方店铺。大型商超,有自营,也有联营商户,更有外租商户。它们的结算方式普遍有两种:返点与租金,返点就是商户卖了多少钱,返企业多少钱。租金就是无论商户卖了多少钱都要交固定的房租。大家一定会想,为什么要返点呢?直接录入进价不香吗?联营商户不是通过本公司内采购进货,他们是自采,你无法知道他们的准确进价。你在系统中只能查到联营商户的销售数量和销售金额。
返点是联营商户销售金额的体现,所以它算在营业利润中,而房租与商户销售金额无关,它是营业外收入。返点金额同样要找财务索取。
【3】净利润
考核一家店铺管理者的标准是净利润。净利润为负的店铺,要么关闭,要么改善。你能改的只有人力成本(你想降房租房东能同意吗?)。常用的方式有两种:
Ps:你搞降价活动并不一定能“东山再起”,很可能会与同行陷入价格战。最终“钞能力”胜,或两败具伤。
第1种:低底薪+高提成,提高销售目标,提高了完成任务的门槛,奖金支出减少。往往招工时是企业效益好的时候,效益不好的时候大多是裁员。例如底薪1k+绩效9k = 10k。
Ps:著名电商对旗下送货员就采用0零底薪+3倍送件提成的方案,将人力成本的风险降到最底。
第2种:裁员,虽然最直观但这种方式有弊端,可能牵扯到对员工的补偿,且根据员工工作年限不同,补偿金额也不同,普遍出现在大公司,或者是人力过剩的企业。
Ps:当然还有其它方案,例如,频繁更换你的工作地点并对迟到罚款,迫使员工主动辞职。上午4小时,下午4小时,中午休6小时,一天工作8小时等等。但是这样的方案是不被国家支持的。
【4】制定新一年销售目标
首先要保证店铺盈利,在盈利的基础上,你要观察Boss对明年销售总目标同比去年实际销售的增长率。手工对各店铺进行调整,上下浮动以Boss的总目标增长率做参考。这里一定存在感情因素,无法避免。
Ps:国企不是你说关就能关的,所以国企对亏损店铺或项目做减亏处理。如某手机品牌造车,目前汽车业务是他们的唯一亏损项目,但是,造车他们不可能放弃,所以这种情况也是减亏,他们相信有一天会从减亏到盈利。
企业总销售目标和各店铺明年的销售目标,都是由人工完成,即便是阿里、腾讯对各项目的销售目标也是如此,不可能通过公式完成。即便有公式,也会人工修改,而且是大改。甚至创始人或现任最高公司领导会直接参与。
Ps:说了这么多,就是想告诉大家,如果有一天你有接触这些工作,千万别跟领导说你有公式能直接做,这话在内行面前就太外行了。如果你不能对每个店铺或每个项目充分了解,你做的销售分解不一定比一个陌生人用Excel公式瞎写的更好。
四、每家店铺销售目标到具体月份
这件事Boss不会参与了,但必需由企业管理者完成,不能交给店铺负责人。

如图1-3,2022年终工作汇报上,你高兴的对Boss说:老板,你看我做的销售分解多好呀,店铺在过去的一年中,有10个月份超额完成任务,只有2个月没有完成任务。这个时候,你就危险了。完成任务=发放奖金,完成任务的月份越多,奖金发的就越多,人力成本增加直接影响净利润。你是Boss你怎么想?
具体店铺销售分解,也是手工调整的,不能单纯的看过去一年销售占比,因为明年销售目标制定的同时,销售计划也会上线,什么时候有什么活动已经提上议程。
如果你创造了图1-4这样的销售目标,Boss也不喜欢。做为一个管理者,既要考虑净利润让企业持续发展,又要考虑员工积极性,人的斗志没了,企业还如何发展?所以大多数企业,每12个月中会有4-5个月能完成任务,这样的销售分解才是Boss想看到的。

五、店铺月销售目标分解到日其实不可信
我一直都告诉大家做数据分析业务重要,以前没有计算机时,照样可以分析。
公司总目标BOSS定了,每个店铺年目标BOSS审核通过了,你店铺每个月的月目标公司负责人给你定好了。你把月目标分解到日,就只有激励员工努力完成每天的任务了。
Ps:无论你怎么分解都有弊端,即便是天气预报也不一定能准确预测当日天气,谁给你的自信可以预测全年每天的销售走势?可能去年这一天销售很好,今年这一天下大雨了生意惨淡。
奖金是按月达成发放,如果想看截止今日月达成多少,Excel就可以轻松搞定了。图1-6

六、PowerBI简单快速完成日销售分解
课件下载(不支持谷歌浏览器):
https://pan.baidu.com/s/1HGSG08aPhCNu9ZokNPaNOw?pwd=1234

【1】只需要导入目标表

【2】新建动态日期表,获取更多颗粒度(细节)
详见《孙兴华讲PowerBI火力全开》笔记28.04
目标表与日期表并不存在任务关系

我们创建三个度量值

Ps:在Excel中Vlookup目标和每月天数,直接单元格计算就可以了。
七、PowerBI复杂方法完成日销售分解
【1】通过案例理解计算原理
这里需要大家先理解一个案例,如下图,有两个车间,每个车间3组工人,今年完成任务如下,明年我们给1车间定的目标是300,2车间定的目标是600

如果我们按简单方法是如下分配明年任务,一个车间的任务除以组数得到每组任务

还可以这样做,看每组在车间内完成任务的占比,按占比进行销售分解,这样做是不是有点"鞭打快牛",谁做的快,就让他更快?那以后快的也慢了,慢的更慢。

还有一种情况,每个车间第1组工人多,第2组略少,第3组最少,工人多产量就应该高,这里的员工就好比店铺的客流,比如周六日客流大,客流大销售就应该多一些。
先计算每个车间中第1组的平均值,再计算这个平均值高于这个车间最低标准的多少,再用这个比例除以这个车间内的总比例求出占比,计算销售分解(明年任务*占比)。

就好比先计算一个月内每个周六的平均销售,再看这个平均销售比这个月内最低销售高了多少比例,最后再这个月内看每天的占比,就可以求销售分解了。最终目的是,每个月的同一个星期几最终任务是相同的。

【2】销售表日期不中断的情况下
回到我们的案例上,导入两个表,不建立关系


如果你确定上一年没有停业的日期(日期是连续的),直接新建表就搞定了
公式解读:
你可以在新建表中,分别return tb1 、return tb2、return tb3..... 分别看每个表的效果。
tb1:使用了summarize,详见《DAX神功》第1卷第15回,因为销售表中不止一个商品,我们需要计算每天的销售金额,就需要按日期进行分组聚合。
tb2:使用addcolumns对tb1添加列,EARLIER指当前行,例如【月份&星期】列当前行是11,就代表1月星期一,筛选出1月所有的星期一,求平均值。以此类推,每个月的周一至周日都是这样计算的平均值。AverageX是迭代函数,他会逐行进行计算。


AVERAGEX(filter(tb1,EARLIER([月份&星期])=[月份&星期]),[销售金额])运算原理举例:
第一行,遇到张三,在表中筛选所有张三,计算平均值1.5
第二行,方法同上
第三行,遇到李四,在表中筛选所有李四,计算平均值6
......以此类推

当我们看到EARLIER函数时,基本都是这个原理,只不是计算的内容不一样,我们使用AverageX时求平均值,MAXX求最大值,MINX求最小值,SUMX求和
tb3:将tb2计算出来的平均销售,对比这个月内最低销售,看它超出了多少。好比全班最低分是孙兴华60分,我的系数是100%,张三67分,他是我的111.67%。
tb4:对tb3添加列,将【目标表】中的【目标】使用LOOKUPVALUE函数在不建立关系的情况下匹配到tb4中。LOOKUPVALUE函数的使用详见《火力全开》笔记2.01
return输入最终表:用超过本月最低销售的水平 除以 本月这个比例的和 得到占比,再乘以销售目标。

最终我们三张表没有建立任何关系

【3】销售表日期中断时
这时要考虑使用日期表,你的销售表来源于2021/1/1~2021/12/31中间可能有断续,日期表你可以创建为2022/1/1~2022/12/31
但是有一种特殊情况,例如上一年2月因特殊原因放假没有销售,我建议你使用前一年数据做替换。如果某月有销售的日期不足7天,你就要考虑补数据,因为这个方法是通过 月份&星期 来计算的,当一个月少于7天时,你这个月必然会缺少一天的系数,假设你缺少的是2月的星期一,那你在新一年的销售任务中,所有的2月星期一都没有参考数据。

本来使用哪一种方法都不准,就不要再让数据缺失了,建议当你数据缺失时,使用更早的数据填补,避开销售表数据中断的问题。
如非必要不建议在表格之间建立更多的关系,《DAX神功》中我们证明过,表格之间关系越多你的思路和逻辑就要越清晰,之后遇到的困难也就越多。
友情提示:公司总销售目标、各店铺销售目标,一般最晚发生于11月份,我们通常使用前一年的11月、12月数据进行参考。店铺按日分解的工作,完全可以元旦前一天再做,因为作用很小,只是激励员工努力完成任务的。
附新建日期表的方法:仍然无需建立关系

我更喜欢简洁的模型。后续还有更多PowerBI案例及原理解读。

PowerBI(DAX函数)、PowerQuery(M函数)、Python办公自动化、Python爬虫、Python数据分析、ExcelVBA、WordVBA、AccessVBA、MySQL等等