薪酬核算同一人名有多条数据薪酬核算人员重复
1、执行下面的语句,获取员工fid
select fid from t_bd_person where fnumber ='重复的人员编码'
2、执行下面的语句,其中的xxxx-xx-xx为日期,请改为当前日期,中文部分请按要求替换。
SELECT "T0"."FID" "任职fid", "T1"."FID" "人员历史表fid", "T2"."FID" "组织历史表fid",
"T3"."Fid" "职位历史表fid"
from "T_HR_EMPORGRELATION" "t0"
left OUTER JOIN "T_BD_PERSONHIS" "t1"
on (("T0"."FPERSONID" = "T1"."FHISTORYRELATEID"
and ("T1"."FEFFDT" <= "T0"."FEFFDT"))
and ("T1"."FLEFFDT" >= "T0"."FEFFDT"))
left OUTER JOIN "T_ORG_ADMINHIS" "t2"
on (("T0"."FADMINORGID" = "T2"."FHISTORYRELATEID"
and ("T2"."FEFFDT" <= "T0"."FEFFDT"))
and ("T2"."FLEFFDT" >= "T0"."FEFFDT"))
left OUTER JOIN "T_ORG_POSITIONHIS" "t3"
on (("T0"."FPOSITIONID" = "T3"."FHISTORYRELATEID"
and ("T3"."FEFFDT" <= "T0"."FEFFDT"))
and ("T3"."FLEFFDT" >= "T0"."FEFFDT"))
where (((("T0"."FASSIGNTYPE" = 1
and "T1"."FHISTORYRELATEID" = '第一步查询处理的fid值')
and "T0"."FISINNER" = 1)
and ("T0"."FEFFDT" <= {ts 'xxxx-xx-xx'}))
and ("T0"."FLEFFDT" >= {ts 'xxxx-xx-xx'}))
第2条语句返回的记录是否存在两条或多条,检查看看如果反馈的多条记录中哪个字段内容不一样,则代表这个表有问题,如:组织历史表fid 字段 不一样
说明 T_ORG_ADMINHIS 这个表数据错误造成
3、根据第一步查询分析结果
查询有问题的表数据, 进行修正,一般都是因为生效时间、失效时间不连续导致
故第三步的查询语句一般是这样的:
select fid、FHISTORYRELATEID、 FEFFDT、FLEFFDT from T_ORG_ADMINHIS where fid in('第2条语句返回结果1','第2条语句返回结果2')
检查生效时间失效时间是否存在交叉并修正,注意当前表也有检查下是否需要修正
薪酬核算同一人名有多条数据薪酬核算人员重复
1、执行下面的语句,获取员工fidselect fid from t_bd_person where fnumber ='重复的人员编码'2、执行下面的语句,其中的xxxx-xx-xx为...
点击下载文档
本文2024-09-22 20:51:52发表“s-hr cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-shr-116359.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章