员工单据中岗位数据少于员工任岗明细数据时,其症状表现与修复方案

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

员工单据中岗位数据少于员工任岗明细数据时,其症状表现与修复方案

【问题描述】

  • 如下图,员工(张三),在员工列表中打开只显示了4行任岗数据

       

  • 而员工任岗明细中却显示张三有8行数据

  • 因此,存在的问题:员工单据中的岗位信息存在缺失





【解决方案】

出现上述问题可以尝试自动修复,但若员工单据的任岗信息分录存在二开,就需要采用以下手工修复方案,特别注意:手工修复脚本需要专业的二开人员或找金蝶研发确认。

一. 手工修复步骤


1、备份原有数据,备份员工-员工任岗分录对应数据表中的数据;

--SQL SERVER数据库备份语句 

 SELECT * INTO t_bd_stafftemp20221014 FROM t_bd_stafftemp 

--ORACLE数据库备份语句 

CREATE TABLE t_bd_stafftemp20221014 AS SELECT * FROM t_bd_stafftemp


2、补数据,将员工任岗明细主数据表中的任岗数据补录到员工-员工任岗分录数据表。 

insert into T_BD_STAFFTEMP(FENTRYID,FSTAFFID,FSEQ,FSTARTDATE,FPOSTID,FDEPTID,FID) select  a.FTEMPSTAFFID,a.FSTAFFID,0,a.FSTARTDATE,a.FPOSTID,a.FDEPTID,a.FEMPINFOID from  t_bd_staff a left join t_bd_stafftemp b on a.FTEMPSTAFFID=b.FENTRYID where b.FENTRYID is null and a.ftempstaffid>0;

update t_bd_stafftemp  set FENTRYID=(select b.FTEMPSTAFFID from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FPOSTID=(select b.FPOSTID from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FSTARTDATE=(select b.FSTARTDATE from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FDEPTID=(select b.FDEPTID from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FID=(select b.FEMPINFOID from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FISFIRSTPOST=(select c.FISFIRSTPOST from t_bd_staff b inner join T_BD_STAFFPOSTINFO c on b.FSTAFFID=c.FSTAFFID where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set fworkorgid=(select b.fuseorgid from t_bd_staff b where b.fstaffid=t_bd_stafftemp.fstaffid);

update t_bd_stafftemp  set FSEQ=(select MAX(FSEQ)+1 from t_bd_stafftemp b where b.FID=t_bd_stafftemp.FID) where FSEQ=0 ;


修复sql示例.rar

--特别注意:以上脚本补录的数据仅包含金蝶预置的字段,若存在二开字段,请手工添加相关sql进行数据补录。


员工单据中岗位数据少于员工任岗明细数据时,其症状表现与修复方案

【问题描述】如下图,员工(张三),在员工列表中打开只显示了4行任岗数据 而员工任岗明细中却显示张三有8行数据因此,存在的问题...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息