115_Power Pivot之HR薪酬计算:公积金、社保、个税、实发工资相关
博客:www.jiaopengzi.com
焦棚子的文章目录
请点击下载附件
一、背景
1、之前写了一个关于入离调转的pp应用,现在个税新增专项附加扣除项目,借此写一个关于薪酬计算的案例;
2、本案例是用工作时长计算薪酬;
3、全勤奖每月200元,每个月工作时长大于等于8小时的天数大于等于20天计为全勤;
4、餐补每月300元,全勤天数不足20天按照15元每天计算,大于20天也是300元(没办法现实就这样);
5、社保缴纳比例和缴纳基数上限下限均为虚拟举例;
6、公积金缴纳比例和缴纳基数上限下限均为虚拟举例;
7、个税缴纳按照起征点为5000的最新税率计算。为了方便起见,本案例中不涉及其他税前补税前扣税后补税后扣相关工资项目。
结果图
二、数据源
1、员工出勤
包含ID,姓名,出勤日期,工作时长(默认处理好的数据)。
2、时薪标准
工作时长每天不超过14小时,标准工作时长8小时,以后每小时递增如下图。
3、最新5000元起征的税率,等级7的上限为9999999是为了计算方便,实际工作中请以相应法律法规为准。
4、社保相关、公积金相关、专项附加扣除均为虚拟数据,实际工作中以相应法律法规为准。
5、根据时薪标准,PQ自定义函数计算出日薪。
自定义日薪函数
提前计算日薪
6、PQ导入日期表
7、建立关系
三、上DAX
1、基本工资
基本工资:=SUM('员工出勤'[日薪])
2、餐补
餐补:=
VAR D =COUNTROWS ( CALCULATETABLE ( '员工出勤', '员工出勤'[工作时长] > 4 ) )
VAR S = 300 / 20
RETURNIF ( D >= 20, 300, S * D )
3、全勤奖
全勤奖:=
VAR D =COUNTROWS ( CALCULATETABLE ( '员工出勤', '员工出勤'[工作时长] >= 8 ) )
RETURNIF ( D >= 20, 200, BLANK () )
4、专项附加扣除
专项附加扣除:=SUM('专项附加扣除'[金额])
5、公积金上限
公积金上限:=SUM('公积金相关'[基数上限])
6、公积金下限
公积金下限:=SUM('公积金相关'[基数下限])
7、公积金缴费比例
公积金缴费比例:=SUM('公积金相关'[缴费比例])
8、公积金
公积金:=
VAR X = '员工出勤'[基本工资] + '员工出勤'[餐补]+ '员工出勤'[全勤奖]
VAR J =SWITCH (TRUE (),X <= '公积金相关'[公积金下限], '公积金相关'[公积金下限],X >= '公积金相关'[公积金上限], '公积金相关'[公积金下限],X)
RETURNIF ( X = BLANK (), BLANK (), X * '公积金相关'[公积金缴费比例] )
9、社保上限
社保上限:=SUM('社保相关'[基数上限])
10、社保下限
社保下限:=SUM('社保相关'[基数下限])
11、社保缴费比例
社保缴费比例:=SUM('社保相关'[缴费比例])
12、社保
社保:=
VAR X = '员工出勤'[基本工资] + '员工出勤'[餐补]+ '员工出勤'[全勤奖]
VAR J =SWITCH (TRUE (),X <= '社保相关'[社保下限], '社保相关'[社保下限],X >= '社保相关'[社保上限], '社保相关'[社保下限],X)
RETURNIF ( X = BLANK (), BLANK (), X * '社保相关'[社保缴费比例] )
13、个税下限
个税下限:=SUM('个税'[下限])
14、个税上限
个税上限:=SUM('个税'[上限])
15、个税税率
个税税率:=SUM('个税'[税率])
16、速算扣除
速算扣除:=SUM('个税'[速算扣除数])
17、个税
个税:=
VAR X = '员工出勤'[基本工资] + '员工出勤'[餐补]+ '员工出勤'[全勤奖]- '公积金相关'[公积金]- '社保相关'[社保]- '专项附加扣除'[专项附加扣除]- 5000
VAR N =SWITCH (TRUE (),CALCULATE ( '个税'[个税下限], '个税'[级数] = 1 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 1 )>= X, 1,CALCULATE ( '个税'[个税下限], '个税'[级数] = 2 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 2 )>= X, 2,CALCULATE ( '个税'[个税下限], '个税'[级数] = 3 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 3 )>= X, 3,CALCULATE ( '个税'[个税下限], '个税'[级数] = 4 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 4 )>= X, 4,CALCULATE ( '个税'[个税下限], '个税'[级数] = 5 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 5 )>= X, 5,CALCULATE ( '个税'[个税下限], '个税'[级数] = 6 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 6 )>= X, 6,CALCULATE ( '个税'[个税下限], '个税'[级数] = 7 )< X&& CALCULATE ( '个税'[个税上限], '个税'[级数] = 7 )>= X, 7)
RETURNX* CALCULATE ( '个税'[个税税率], '个税'[级数] = N )- CALCULATE ( '个税'[速算扣除], '个税'[级数] = N )
18、实发工资
实发工资:='员工出勤'[基本工资]
+'员工出勤'[餐补]
+'员工出勤'[全勤奖]
-'社保相关'[社保]
-'公积金相关'[公积金]
-'个税'[个税]
四、总结
1、本案例中没有复杂的DAX逻辑,都是很简单的业务转换;
2、小技巧:时薪转换为日薪的pq自定义函数;
3、参数表的使用;
4、为了方便演示,本案例不涉及其他工资项目,以及公积金超额计税等;
5、笔者并非专业HR从业人员,案例旨在分享Power Pivot相关业务落地使用案例,具体业务有不妥之处望请指正。
by 焦棚子
焦棚子的文章目录
115_Power Pivot之HR薪酬计算:公积金、社保、个税、实发工资相关相关推荐
- Java 多态的薪酬计算的练习
一个简单的 Java 多态的薪酬计算,主要练习面向对象编程的函数方法, public class SalaryManage {public static void main(String[] args ...
- Problem B: 薪酬计算
Problem B: 薪酬计算 Time Limit: 3 Sec Memory Limit: 128 MB Submit: 3366 Solved: 1937 [Submit][Status][ ...
- Problem E: 薪酬计算
Problem E: 薪酬计算 Time Limit: 3 Sec Memory Limit: 128 MB Submit: 3497 Solved: 2007 [Submit][Status] De ...
- Schema_CN28_CNNG净薪酬计算
行 功能 参1 参2 参3 参4 D 文本 000010 COM 净薪酬计算 000020 BLOCK BEG ...
- 社保入税+国家支持,企业一大法宝:灵活用工
社保入税引发灵活用工热潮 2019年1月1日起基本养老保险费.基本医疗保险费.失业保险费.工伤保险费.生育保险费等各项社会保险费交由税务部门统一征收.当前,该项工作部署已经改为从2019年1月1日起, ...
- 利用word分词通过计算词的语境来获得相关词
我们如何通过计算词的语境来获得相关词呢? 语境的定义是:在一段文本中,任意一个词的语境由它的前N个词和后N个词组成. 相关词的定义是:如果两个词的语境越相似,那么这两个词就越相似,也就越相关. 算法由 ...
- 薪酬体系怎么设计?详解HR薪酬体系设计的方法、步骤与工具
HR在定薪时总会遇到这样的情况: 好不容易找到心仪的候选人,顺利走完面试,最后却因为薪资没有别家吸引力拒掉offer. 老员工吐槽,为什么做这么多事,不如新员工拿的多,涨薪还无望? 老板在会上质疑,为 ...
- 利用计算图计算公积金余额
根据公积金管理办法,员工入职单位发放工资之日起按照缴存基数缴存住房公积金,提取则是按照每月%90的比例,现在我们利用计算图来计算一下,一张余额为m的银行卡,再经过多轮缴存和提取后,卡内余额遵守什么样的 ...
- Problem A: 薪酬计算
Description 某公司有经理(Manager).雇员(Employee).小时工(HourlyWorker)和营销人员(CommWorker)四类员工(Person),他们的薪酬计算方法各不一 ...
最新文章
- 基于深度学习的肺癌预测诊断
- Sublime Text3 自定义快速生成代码
- php蜘蛛池搭建教程,【小旋风教程】万能蜘蛛池x4安装教程 _ 惠州SEO
- 四则运算APP最后阶段
- python企业级框架_Python六大开源框架对比:Web2py略胜一筹
- 四:理解Page类的运行机制(例:基于PageStatePersister的页面状态存取)
- 双系统安装ubuntu后没有windows启动项
- 【python基础语法】对象None
- 拓端tecdat|R语言样条曲线、泊松回归模型估计女性直肠癌患者标准化发病率(SIR)、标准化死亡率(SMR)
- excel制作甘特图模板
- 京东商城java笔试_京东java笔试
- Oracle如何卸载、清理干净
- 管家婆云辉煌的打印样式设置
- 视频格式怎么改为mp4?有什么好用的视频格式转换软件
- 跑跑卡丁车手游怎么用电脑玩 跑跑卡丁车模拟器玩法教程
- chemdraw如何改中文_教您如何掌握ChemDraw页面设置技巧
- Android 11 : 隐私和安全
- CVPR 2019 论文汇总(按方向划分,0514 更新中)-转载
- Excel聚光灯--双箭头指示
- Excel使用公式引用其它sheet数据创建序列,无法忽略空白值的解决办法
热门文章
- 关于.NET框架的主要组件 10:45:02
- 程序路径查找 找到指定程序所在的目录
- celery-01-异步任务模块-解决发送邮件的延时问题
- postgres主从配置
- SAP编程中最基本的概念
- mount命令详解及常见问题汇总
- 转自: http://blog.csdn.net/xiaxiaorui2003/article/details/3838631
- 以小见大:如何设计注册登录页?
- POJ1273 Drainage Ditches(最大流基础题)
- 关于SEL的简单总结