电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

s-HR人力编制逻辑,表结构及工具类总结

来源:金蝶云社区作者:金蝶2024-09-224

s-HR人力编制逻辑,表结构及工具类总结

【适用版本】

s-HR V8.5SP1及以上版本

【注意事项】

s-HR V8.6.1.2之后新增多维编制,多维编制和人力编制关于编制,维度,起初人数等概念含义是一样的,但是多维编制可设置多个维度的控编,表结构和工具类也不同于人力编制,本文只介绍人力编制相关内容。

【功能说明】

1、编制概念

1.1 编制是什么?做什么?

其实大家都懂编制是什么意思,一个职位给多少编制就能入多少人,就这个意思。进而可以引申到组织的编制,以及其它维度的编制设置。

通过设置某一维度的编制,比如职位,可以控制职位的编制人数,方便细微的管控此职位的占编人数变化,达到集团人员管控的目的。

1.2 什么是占编制

目前系统业务对“占编制”的定义是:任职占编制并且用工关系状态占编制。需要注意的是“占编制”和“占人头”是两个概念,不要混淆。

任职占编制:可以通过EAS客户端 > 员工变动操作配置查看,任职为主任职并且变动类型占编制即为任职占编制。

用工关系状态占编制: 可以通过员工基础资料数据维护 > 用工关系状态 查看是否占编制。

获取当前的占编人数:可以通过员工信息维护页面的高级过滤

1.3 维度和频度

老编制系统编制的设置固定为三个维度,分别是组织、职位、用工关系

频度有两个,分别为年、月

即老编制系统支持3个维度和2个频度的组合控编

1.4 期初人数

编制期初人数指:上月月底时刻的人数,不是当前时间的占编人数,是以变动记录表为主体

比如当前是202012月份,则12的期初人数是取的2020-11-30 23:59:59 的占编人数

1.5 流入流出

流入流入指:当前组织或职位的人数流入或者流出,以流入流出表为主体

单据未生效则为预计流入流出,有在途数据;单据生效则变为实际流入流出,删除在途数据

1.6 汇总编制、直属编制

以组织来说,组织是有层级的。

A组织的汇总编制就是A组织包含下级的编制数,也就是A组织直属编制 + A组织下级组织编制之

A组织的直属编制就是字面的意思,就是A组织自身的编制数,不包含下级的编制,其实也就是组织下职位的编制之和的最大数量。

需要注意的是,编制表页面上展示的是汇总编制,如果只导入直属编制,那么在编制表页面是没有数据显示的。

1.7 定编明细

处理提单时,很多人问定编明细是什么意思?甚至有些人把编制数据写到定编明细字段中,然后问为什么编制没有生效

据我理解及咨询德马,定编明细这个字段没有用处,没有实际的业务意义;

它可以被理解为或者用做 “备注”。比如原来打算给A组织设置10个编制,于是可以给定编明细设置为10,具体编制也为10,后来由于各种各样的理由,A组织的编制更改了很多次,变成了16,这时候可以不忘初心看到定编明细,明白了自己的初衷是10.

由此看到,定编明细确实没什么用,不用过多关注。

2、页面及对应功能

人力编制模块主要包括四个页面,分别是人力编制表、人力编制控制线、人员需求申请、人力编制动态预览。其中核心和最常用的是人力编制表人力编制动态预览。


2.1 人力编制表

人力编制表可录入基于行政组织、职位、用工关系维度的人力编制,同时也支持年度、月度的人力编制维护,是编制系统核心的部分,用于建立编制表并录入编制数据。

PS 用工关系维度的编制在实际业务中很少有人使用,主要还是组织维度、职位维度,或者组织+职位)


2.2 人力编制动态预览

人力编制动态预览可以查询各行政组织、职位、用工关系状态下的编制数、实际人数、流入流出及可用编制人数情况,各维度的编制情况一览无遗,是业务人员最常用的功能。

2.3 人力编制控制线

人力编制控制线支持自上而下人力编制,上级可以控制下级行政组织的编制总数不能超过控制线

说白了就是可以给组织设置一条线,设置的编制数不能超过这条线,不选控制线的话,编制数就不限制填写。

PS:控制线在实际业务上基本没人使用)

2.4 人员需求申请

用人部门提交人员需求申请,可支持增补人员申请及扩编申请流程

人员需求申请的初衷是正规的增编流程,比如一个编制表已经填好了编制并启用了,A职位的占编人数已满,但是现在A职位需要再入职一个人,那么就可以走人员需求申请,通过工作流审批增加编制。当然了,编制表提供了变更的功能,可以直接改编制。

人员需求申请功能存在一定的缺陷,详见后文。


3、主要实现类

3.1 人力编制表

com.kingdee.shr.costbudget.web.handler.StaffingListHandler

com.kingdee.shr.costbudget.web.handler.StaffingHandler (编制表的最重要handler

com.kingdee.shr.costbudget.util.StaffingExcelUtilExcel工具类,主要是全量导入的逻辑)

com.kingdee.shr.costbudget.util.StaffingHelper(编制工具类)


3.2 人力编制动态预览

com.kingdee.shr.costbudget.web.handler.StaffingStatHandler(动态预览页面的数据)

com.kingdee.shr.costbudget.util.StaffingStatHelper(期初人数、流入流出等重要的SQL


3.3 人员需求申请

com.kingdee.shr.costbudget.web.handler.StaffingAddBillEditHandler(表单)

com.kingdee.shr.costbudget.web.handler.StaffingAddBillListHandler(列表)


3.4 人力编制控制线

目前业务来看并不重要:

com.kingdee.shr.costbudget.web.handler.StaffingControlEditHandler(表单)

com.kingdee.shr.costbudget.web.handler.StaffingControlListHandler(列表)


3.5 编制历史表处理

“变更中”状态的编制走的是历史表,不过尽量不要在变更中去处理提单,麻烦!等它生效

com.kingdee.shr.costbudget.web.handler.StaffingHisListHandler

com.kingdee.shr.costbudget.web.handler.StaffingHisViewHandler


4、主要数据表

4.1 编制重要表

T_HR_staffing                  人力编制表

T_HR_staffingOrg               组织编制数据表

T_HR_staffingPost              职位编制数据表

T_HR_staffingLaborRelation      用工关系编制数据表(基本不用)

文章不会提供数据字典,如有需要可通过s-HR系统下载数据字典查看。


4.1.1 T_HR_Staffing

记录人力编制列表的信息,通过此表关联组织、职位编制表的具体数据


4.1.2 T_HR_StaffingOrg

记录组织的具体编制数据,通过字段FStaffing和人力编制表关联

查询数据:SELECT * FROM t_hr_staffingorg where FStaffing = '' and FAdminOrgUnit = '' and FMonth = 0 ; 再加一个FState就可以唯一确定一条数据。

FMonth = 0即查询年度编制,为1-12 即查询月份具体编制,查询根据频度来定。

表里面是设计了年度编制两个字段的,后面应该是弃用了,不要产生误解。


4.1.3 T_HR_StaffingPost

记录职位的具体编制数据,和组织编制表差不多,多了个职位字段,相当于编制具体到组织下面的职位了。组织、职位,组织+职位是最常用的控编组合。


4.2 相关重要表

T_BD_PersonHis          员工历史表

T_HR_EmpOrgRelation     员工变动记录表

这两张表是编制获取期初人数的关键表。


T_HR_EmpFlowInOut      流入流出表

计算编制流入流出的关键表。


T_HR_EmpPosChangeData  任职经历变化过程表(在途数据)

单据还没有正式生效时的在途数据,生效后事务删除,编制的计算要算入在途表的数据。


5、重要OSF和方法

5.1 GetStaffingStateService

编制最重要的OSF,各控编入口调用,返回控编结果。

参数说明:

adminOrg.id: 需要获取编制状态的 行政组织 id ,非必填

position.id: 需要获取编制状态的 职位id值,非必填

employeeModle.id: 需要获取编制状态的 用工关系的id值,非必填

hassub:是否包含下级

bizDate:取数参考时间,时间格式yyyy-MM-dd 或者:yyyy-MM-dd HHss


返回值:

orgId: 缺编组织id

orgName:  缺编组织名称

positionId: 缺编职位id

positionName: 缺编职位名称

labelRelationId: 用工关系类型id

labelRelationName: 用工关系类型名称

isStaffingShort: 是否缺编

shortNumber: 缺编数量


5.2 SHRPersonCountOfPersonPlanService

获取当前编制人数及在途人数,GetStaffingStateService中有调用此OSF计算可用编制。

参数说明:

adminOrg.id: 需要获取编制状态的 行政组织 id ,非必填

position.id: 需要获取编制状态的 职位id值,非必填

employeeModle.id: 需要获取编制状态的 用工关系的id值,非必填

hassub:是否包含下级

bizDate:取数参考时间,时间格式yyyy-MM-dd 或者:yyyy-MM-dd HHss


返回值:

subPersonCount : 在途需减少编制人数

addPersonCount:  在途需添加编制人数

personCount: 当前实际在编人数

5.3 SHRActionVerifyByPersonPlanCustomerTool工具类

编制校验拓展工具类:

此工具类封装了入编制和去编制的一些校验方法,以及单据提交审批、撤销、删除时需要处理编制数据的相关方法,如果入转调离使用

s-HR人力编制逻辑,表结构及工具类总结

【适用版本】s-HR V8.5SP1及以上版本【注意事项】s-HR V8.6.1.2之后新增多维编制,多维编制和人力编制关于编制,维度,起初人数等概念含...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信