Power Pivot 员工效率监控

传送门https://zhuanlan.zhihu.com/p/47355005

1、背景

在劳动密集型行业中,员工效率是一个永恒的话题。
今天把零时用工的效率提升展示及效率监控建一个PP模型并输出。
达成效果
注:只是模型功能建立,美化的东西仁者见仁智者见智file

2、基础数据

file
file
说明,偷个懒就没有建纬度表和日期表,当数据量大的还是需要建立的。
建立关系
file

3、基本要求

1、新员工效率提升监控,要求每天看到员工效率和标准效率作对比;
2、第一次有工作记录表示入职;
3、员工效率监控达标的分别为:1天30%;2天50%;3天60%;4天80%,5天100%(可以做成参数表,由于时间有限暂时不用参数了,可以根据自己业务需求自行设定参数表);
4、根据工作天数(非入职天数)对应相应效率标准,如ID003,截止7号工作天数5天,入职天数为7天,计算效率以出勤5天为准;
5、效率=操作数量/操作时长;
6、把未达标的员工找出来,反馈现场进行重点培训和管控。

4、上DAX

基础度量值写好
效率(操作量/操作时长)

效率:=SUMX('事实表',DIVIDE('事实表'[操作数量],'事实表'[操作时长]))

效率P(效率/标准)

效率P :=
SUMX (
    ADDCOLUMNS ( '事实表', "BZ", RELATED ( '标准表'[效率标准] ) ),
    '事实表'[操作数量] / '事实表'[操作时长]/ [BZ]
)

D1(D1-D5同理,只是N变化,表示工作第一到第五天的效率)

D1:=
VAR N=1
VAR MAXD=TOPN(N,VALUES('事实表'[日期]),'事实表'[日期],ASC)
VAR T=LASTDATE(MAXD)
VAR L=N<=COUNTROWS(MAXD)
RETURN
IF(L,CALCULATE('事实表'[效率],T))

Lsat(最近一次工作的效率)

Last:=
VAR T=LASTDATE('事实表'[日期])
RETURN
CALCULATE('事实表'[效率],T)

Days(有效工作天数)

Days:=
VAR MIND=CALCULATE(MIN('事实表'[日期]),ALL('事实表'[日期]))
VAR MAXD=CALCULATE(MAX('事实表'[日期]),ALL('事实表'[日期]))
VAR T=CALCULATETABLE(VALUES('事实表'[日期]),DATESBETWEEN('事实表'[日期],MIND,MAXD))
RETURN
COUNTROWS(T)

P1(P1-P5同理,只是N变化,表示工作第一到第五天的效率除以标准效率的占比,便于部门横向比较)

P1:=
VAR N=1
VAR MAXD=TOPN(N,VALUES('事实表'[日期]),'事实表'[日期],ASC)
VAR T=LASTDATE(MAXD)
VAR L=N<=COUNTROWS(MAXD)
RETURN
IF(L,CALCULATE('事实表'[效率P],T))

是否达标(根据选择日期,查看为达标员工明细,反馈现场管理针对性提升培训,未选择日期默认为最大日期)

是否达标:=
VAR MIND =
    CALCULATE ( MIN ( '事实表'[日期] ), ALL ( '事实表'[日期] ) )
VAR T =
    LASTDATE ( '事实表'[日期] )
VAR CD =
    CALCULATETABLE (
        TOPN ( 1, VALUES ( '事实表'[日期] ), '事实表'[日期], DESC ),
        ALL ( '事实表'[日期] )
    )
VAR N =
    IF (
        HASONEVALUE ( '事实表'[日期] ),
        COUNTROWS (
            CALCULATETABLE ( VALUES ( '事实表'[日期] ), DATESBETWEEN ( '事实表'[日期], MIND, T ) )
        ),
        COUNTROWS (
            CALCULATETABLE ( VALUES ( '事实表'[日期] ), DATESBETWEEN ( '事实表'[日期], MIND, CD ) )
        )
    )
VAR XL =
    CALCULATE ( '事实表'[效率P], T )
VAR TF =
    SWITCH (
        TRUE (),
        N = 1, XL < 0.3,
        N = 2, XL < 0.5,
        N = 3, XL < 0.6,
        N = 4, XL < 0.8,
        N >= 5, XL < 1
    )
RETURN
    IF ( TF, "未达标" )

5、静态效果图

file
重点关注标注颜色的员工

6、总结

1、DAX本身无难度,只要是业务逻辑;
2、以上只是笔者觉得有用的指标即输出,给大家提供一种思路;
3、写DAX重点是把业务逻辑转换成DAX对应的上下文。

如需要附件,请在评论区留下邮箱。

by焦棚子