Power BI 店铺陈列与销售、库存数据结合的看板
零售店铺现场陈列实况如何与销售、库存数据有机结合?
透视表(矩阵)足以。不需要上线复杂的系统,还免费。比方下图的矩阵可以看作服饰店铺一个7x7的鞋墙货架空间:

放大局部:

我们可以从这个矩阵看板得到以下信息:
1.这个鞋子摆在店铺什么位置(产品照片对应位置)
2.卖的怎么样(空白五角星代表无销售,半填充五角星代表销量1-4,填充五角星代表销量大于等于5)
3.库存多少,是否断码(绿色背景表示尺码齐全,橙色表示断码)
鼠标放到任意鞋款,还可悬窗提示该鞋款的详细信息,产品照片细节也更清晰:

获得这些信息后方便进行决策:调整陈列位置?补货?促销?使用Power BI制作这样一个模型之后,每次更新数据,几秒后即可得到最新结果,辅助下一步行动。可以单店使用,也可以店铺群使用。

本文以鞋子货架为例进行讲解,其他商品种类可灵活扩展应用。
1.数据准备
制作本模型需要三个数据:店铺的现场陈列状况、销售数据和库存数据。
首先需要将店铺现场的鞋墙数字化,即准备一张Excel表格,给每一个鞋托编号,并且记录每个鞋托目前摆放的哪个产品。例如下图中,STY0001这个产品摆放在男子鞋墙第A列第一行(此处的性别及ABCD列可以灵活替换为产品系列等店铺实际道具命名)。每次货架有调整或者陈列产品有调整均需更新本表格。首次数字化可能比较耗时,之后局部维护相对轻松。

产品照片至关重要,关系到我们能否通过表格直观感受产品所在位置。如果公司有完整的网上产品图库,将图片URL更新到陈列位置表即可。如果公司没有网络产品库,或者产品不宜上传至网络图床,则使用电脑本机图片(这个也没有可以在店铺现场拍照),然后将图片转换为base64并列在陈列位置表中。上图即使用的本地图片。
接着,准备好销售数据和库存数据,本例简化操作,只列举关键的字段。为方便查看货品是否断码,库存数据具体到每个尺码。


将以上三个数据导入Power BI并建立关系:

2.计算
本例涉及有关销售和库存的指标,分别进行计算。基础度量值如下:
M.销量 = SUM('销售明细'[销量])
M.库存数量 = SUM('库存明细'[库存数量])
M.可销周 = DIVIDE([M.库存数量],[M.销量])
M.产品ID = SELECTEDVALUE('陈列位置'[产品ID])
前期讲解过如何计算商品齐码断码,此处我们按照最简单实用的方式判断,即中间的尺码有库存认为不断码。男鞋40,41,42,43有库存我们认为尺码齐全,女鞋对应是36,37,38。新建列,对中间核心尺码进行标记:
是否核心尺码 =
IF (
'库存明细'[性别] = "男",
SWITCH ( '库存明细'[尺码], "40", "是", "41", "是", "42", "是", "43", "是", "否" ),
SWITCH ( '库存明细'[尺码], "36", "是", "37", "是", "38", "是", "否" )
)
然后判断每个产品是否齐码:
是否齐码 =
VAR size_count =
CALCULATE (
DISTINCTCOUNT ( '库存明细'[尺码] ),
'库存明细'[是否核心尺码] = "是",
'库存明细'[库存数量] > 0
)
VAR result =
IF (
HASONEVALUE ( '陈列位置'[产品ID] ),
IF (
AND ( SELECTEDVALUE ( '陈列位置'[性别] ) = "男", size_count = 4 )
|| AND ( SELECTEDVALUE ( '陈列位置'[性别] ) = "女", size_count = 3 ),
"齐码",
"断码"
),
BLANK ()
)
RETURN
result
该公式含义是:如果是男款,4个核心尺码均有库存则齐码,女款是3个核心尺码。
最后将以上度量值打包为一个显示在矩阵中的结果:
显示 =
[M.产品ID] & " |" & [是否齐码]
&
UNICHAR ( 10 ) & "销量" & [M.销量]
&
UNICHAR ( 10 ) & "库存" & [M.库存数量]
&
UNICHAR ( 10 ) & "可销周"
&
FORMAT ( [M.可销周], "0.0" )
此处UNICHAR(10)用来换行。
3.可视化
选择Power BI默认图表中的矩阵作为主图表,字段如下设置:

对“图片”字段设置五角星条件格式:

对“显示”字段设置背景色条件格式:

颜色用度量值定义:
颜色 = IF([是否齐码]="断码","#FF7043","#81C784")
以上,主界面设置完成。接着新建一个空白页面,命名为“图片”,显示以下信息:

最上方为“显示”度量值的卡片图,第二行库存明细将库存尺码串联起来:
库存明细 =
"库存明细:"
& CONCATENATEX ( '库存明细', '库存明细'[尺码] & "码" & '库存明细'[库存数量], "|", '库存明细'[尺码] )
下方的图片使用Simple Image这个第三方图表,该图表支持Base64图片。

接着返回主页,将工具提示打开,链接到刚才新建的页面,即可实现悬浮提示效果。

细心的读者可能注意到三个数据源链接的字段是店铺&产品ID,陈列位置表的该字段是一端,销售和库存表的该字段是多端。这种关系要求每个陈列位置摆放不同的产品。在现实店铺中,很有可能存在不同位置摆放相同产品的状况,如下图所示:

此时,需要我们将三张表的关系进行重新链接,调整为多对多关系。