• 1.84 MB
  • 2022-05-17 13:43:58 发布

HR培训考勤管理系统内置公式函数算法介绍

  • 44页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
金蝶K/3WISEV12.1HR产品培训--系统内置公式函数算法介绍金蝶软件(中国)有限公司 提纲内置公式介绍内置函数算法分析业务分析取职员打卡记录函数生成假期额度考勤汇总函数个性化公式实现 考勤内置公式介绍考勤计算考勤汇总假期额度生成假期额度重算考勤自动计算实时重算假期额度考勤重算生成自然年度假期额度 考勤计算相关公式区别考勤计算考勤计算:不仅计算考勤异常,冲消假期等,还进行智能排班,取职员打卡记录考勤重算:只需要计算考勤异常,冲消假期等考勤自动计算:由于自动计算是系统每天自动执行,所以该公式只计算当天的考勤记录 假期额度相关公式区别额度生成生成假期额度:根据出生日期生成全体职员的年假额度等生成自然年度假期额度:根据指定的基准日期生成全体职员的年假额度等两个公式共用的是相同函数,主要差别就是传递的参数和年假额度生成方式不一样 假期重算相关公式区别假期重算重算假期额度:重算所有人的假期额度ATS实时重算假期额度:重算某个人的假期额度实时重算一般保存,作废假期单时使用,考虑到性能,只重算所选职员的假期额度 提纲内置公式介绍内置函数算法分析业务分析取职员打卡记录函数生成假期额度考勤汇总函数个性化公式实现 内置函数算法分析__考勤计算考勤智能排班取职员打卡记录原始考勤异常处理补签卡计算计算考勤异常处理初始化冲消假期取假期单计算取出差单计算取调休单计算取停工单计算 内置函数算法分析__考勤汇总汇总迟到早退年假病假旷工产假婚假加班用户可以自定义字段,然后汇总感兴趣的内容 提纲内置公式介绍内置函数算法分析业务分析取职员打卡记录函数生成假期额度考勤汇总函数个性化公式实现 系统内置考勤函数公式类别考勤计算考勤汇总假期额度生成假期额度重算考勤自动计算考勤重算生成自然年度假期额度 员工智能排班函数考勤智能排班函数可实现职员排班的智能化。算法:取指定时间段内设置了智能排班且未排班的职员,从打卡数据中获取职员最早上班时间,最早上班时间和轮班规则中的班次第一段上班时间比较,取时间最接近的班次作为模糊匹配上的班次。如智能排班设置启用每日班次智能判断,周六日按轮班规则判断,则周六周日按轮班规则取到对应的顺序结合轮班规则开始于顺序,获取对应的班次。如启用每日班次智能判断,周六日按日历规则判断。则周六周日按日历取周六周日班次。 按指定范围获取职员/清除指定范围职员临时表实现分组织单元计算的关键函数,如果想支持分组织单元计算的公式,必包含,方法:添加后,关联#Temp_EmpSelected。功能:根据组织单元及职员范围条件参数,进行过滤,获得职员过滤表变量参数:@UnitIDs:组织单元ID集合格式为"组织单元ID1","组织单元ID2"...@EmpIDs:职员ID(s)字符串,格式为"职员ID1","职员ID2"...组织单元ID(s)=@UnitIDs职员ID(s)=@EmpIDs算法:1,获取指定范围的组织单元;2,定义临时表,用来保存指定范围内的职员3,如果没有指定需要计算的职员,根据指定的组织单元获取职员,如果指定则取交集 取计算范围内的原始打卡记录性能和并发考虑,使用临时表取代之前的HR_ATS_OriginalityCardTemp。功能:获取需要计算范围内的所有原始打卡记录参数:@BeginDate:计算开始时间,DateTime@EndDate:计算结束时间DateTime算法:1,获取计算范围内需要的原始打卡记录;2,因为跨天班次的存在,所以取卡时间为>=开始时间-1天并且<结束时间+2天 取职员打卡记录函数取职员打卡记录函数●函数名称:取职员打卡记录●函数结构:取职员打卡记录(@BeginDate,@EndDate,@Interval)*说明:公式需要调用该函数时必须引用该函数结构,而不是函数的名称。●函数描述:用于计算和判定职员在当天班次的各段工作时间的实际上、下班时间点。●函数参数:@BeginDate:本次计算的开始日期。@EndDate:本次计算的结束日期。@Interval:打卡间隔时间。@Splits:本次计算需要对班次中的前几段上下班时间进行计算(显然段数少则计算速度快)。*说明:调用该函数的公式必须为以上参数提供对应的参数值。 取职员打卡记录函数取职员打卡记录函数功能:取职员打卡记录函数根据取卡规则,从原始打卡记录中获取职员考勤的上、下班时间。●算法概要:函数根据职员当天工作班次对应的班次定义中规定的各段工作时间的标准上、下班出勤时间点(在[班次定义]中进行设置)以及结合取卡规则(例如:在上班时间点附近有多张卡时如何取卡等),对考勤机提供的职员的原始打卡时间数据进行计算和分析,从而判定出职员当天班次的各段工作时间的实际上、下班时间点。 取职员打卡记录函数算法:1、取指定时间段内职员的原始打卡记录放入原始打卡记录临时表HR_ATS_OriginalityCardTemp(V12后调整为#TempOriginalityCard),以减小数据量,提高计算速度。2、取5段上、下班时间点的打卡记录:举例说明:第一时间段上班时间。取卡规则:上班打卡1=Min(打卡记录临时表.打卡时间)当(打卡记录临时表.打卡时间>=最早上班时间)and(打卡记录临时表.打卡时间<标准下班1) 取职员打卡记录函数公式名称描述考勤计算公式考勤计算公式按一定逻辑顺序调用一系列函数,完成考勤智能排班、职员每天各段实际上、下班时间点判定、考勤异常判定、补签卡修改上下班时间以及用请假单、出差、调休、停工单据冲销考勤异常等计算。考勤计算公式通过调用取职员打卡记录函数,完成职员每天各段实际上下班时间点的判定。考勤自动计算公式1)考勤自动计算公式与考勤计算公式的功能相同,但是对计算参数做了特殊处理,不需要每次计算时手工输入考勤计算的开始、结束日期。自动计算公式的计算开始、结束日期分别取进行考勤计算时的系统当前日期的前一天和系统当前日期。因此可用于执行计划中设置定时自动计算。*说明:对于考勤计算的开始、结束日期的取日期规则可由用户自定义。●调用了取职员打卡记录函数的系统内置公式有: 生成假期额度公式额度初始化年假计算(更新假期额度)婚假计算(更新假期额度)产假计算(更新假期额度)护理假计算(更新假期额度)调休假计算(更新假期额度)工伤假计算(更新假期额度)病假、事假、丧假计算(更新假期额度)整理假期额度*说明:生成自然年度假期额度公式设计思路和计算顺序与其相同,只是年假计算的具体规则不同。 额度初始化函数额度初始化函数●函数名称:额度初始化●函数结构:额度初始化(@CalculateDate,@StandardDate,@IsPosDate)*说明:公式需要调用该函数时必须引用该函数结构,而不是函数的名称。●函数描述:将当前日期以前的额度置为禁用,并将手动修改的额度放入临时表#TempHolidayLimit●函数参数:@BeginDate:本次计算的开始日期。@EndDate:本次计算的结束日期。@IsPosDate:是否以入职日期作为基准日期*说明:调用该函数的公式必须为以上参数提供对应的参数值。 额度初始化函数算法:1、获取计算时间2、禁用以前的额度3、创建临时表,插入手动修改的记录 年假计算函数年假计算函数●函数名称:年假计算●函数结构:年假计算(@HolidayTypeCode,@Period,@IsPosDate)*说明:公式需要调用该函数时必须引用该函数结构,而不是函数的名称。●函数描述:初始化额度表,为每个人插入对应假期类型,且额度为零的记录。●函数参数:@HolidayTypeCode:假期类型。@Period:周期。@IsPosDate:是否以入职日期作为基准日期*说明:调用该函数的公式必须为以上参数提供对应的参数值。 考勤汇总函数考勤汇总函数●函数名称:考勤汇总●函数结构:考勤汇总(@BeginDate,@EndDate)*说明:公式需要调用该函数时必须引用该函数结构,而不是函数的名称。●函数描述:为考勤汇总报表准备职员每天的日汇总记录。基于对应的考勤计算记录进行“再计算”处理。●函数参数:@BeginDate:本次计算的开始日期。@EndDate:本次计算的结束日期。*说明:调用该函数的公式必须为以上参数提供对应的参数值。 考勤汇总示例要在考勤汇总里汇总丧假和工伤假的天数,请问如何实现? 示例分析考勤汇总计算更新的是考勤汇总表,考勤汇总表里保存的是日汇总记录。日汇总记录是基于对应日期考勤明细记录的计算结果。在考勤明细表中有类型1、类型2、类型3及对应的3个请假类型的时长。 解决方法在考勤汇总表中增加[工伤假天数]和[丧假天数]字段,通过修改考勤汇总函数和公式,在考勤汇总时分别统计职员在计算日期范围内工伤假天数和丧假天数。 具体步骤Step1:在数据字典中找到考勤汇总表,增加两字段“工伤假天数”和“丧假天数”; 具体步骤Step2:在函数设置中复制新增考勤汇总函数,并将以下内容添加在原函数的最后,并保存; 生成假期额度额度初始化年假计算……整理假期额度自定义假期类型函数,直接插入 生成假期额度示例1.在公司服务满1-2年(含2年),可休假5天,最多可分10次休完;2.服务满2-5年(含5年),可休假7天,最多可分14次休完;3.服务满5-10年(含10年),可休假10天,最多可分20次休完;4.服务满10年以上,可休假12天,最多分24次休完; 示例分析此处只涉及年假修改更改更新年假额度函数即可 假期额度重算重算额度GUI整天分段连续定量工作流整天1.分别获取假单2,清空对应的已用额度和已用次数3.上传对应的额度和次数 假期额度重算FUsedCounts=SUM(CASEWHENsi.FLaborHour=0andFIsHarfDay=0THENFLength/8WHENsi.FLaborHour>0andFLength/si.FLaborHour<1andFIsHarfDay=0THENFLength/si.FLaborHourWHENsi.FLaborHour>0andFLength/si.FLaborHour>=1andFIsHarfDay=0THEN1WHENFIsHarfDay=1THEN0.5END) 提纲内置公式介绍内置函数算法分析业务分析取职员打卡记录函数生成假期额度考勤汇总函数个性化公式实现 个性化公式实现函数公式存储过程公式函数函数函数函数的粒度越小,重用性越高,公式越灵活 个性化公式示例需求描述算法分析公式实现 有薪假描述客户规则如下:有薪假(即年假):假期周期:1年假期范围:每年的4月1日至来年的3月31日 有薪假规则描述以入司日期为判断标准如果入司满1年者,有薪假为17天;如果未满1年者过了试用期的职员按月份折算假期。折算方法:从入公司当月开始按下表计算:15日前(包括15日)入公司者,该月计作开始月,15日后入公司者,下月计作开始月 有薪假计算结果如下表4月5月6月7月8月9月10月11月12月1月2月3月171615141311976431 算法描述入司一年以上的假期额度都是17天需要确认入司不满一年员工月份,还有入司当月日期比较入司日期后上传对应的额度 实现细节CONVERT(INT,day([职员_考勤职员视图].[入司日期]))>15(CONVERT(INT,month([职员_考勤职员视图].[入司日期]))年假计算函数初始化额度更新假期额度函数根据判断条件上传对应的额度 有薪假公式实现复制新增假期额度公式按要求更改年假函数参数不用变化,保存即可. 感谢观看金蝶软件(中国)有限公司