zoukankan      html  css  js  c++  java
  • 工作人员对应关系错乱----问题解决

    最近参与到一个维护项目,客户反映,自己的Live环境,工作人员的ListPage界面看到张三,点击进去显示李四。

    最初看到这个问题,想到的那肯定是工作人员对应的人员记录不合适,查找后台表,HcmWork 和Dirperson表中人员都有,就开始了debug,跟代码,然鹅,代码跟踪费劲了,没找到线索。

    后来还是从详细界面入手,查看界面组织出来的Query,发现DirpersonName表中没有数据。恩,就是Dirperson关联的DirpersonName表中缺少部分人员的记录。在ListPage界面看到的人员名称,在Dieperson表中是全名,而详细的姓和名是分开存储在DirpersonName中。

    跟客户了解后得知,有错的这一批工作人员数据是几年前上线时用代码导入的。这就对了,代码导入时未给DirperName赋值,导致每次打开详细界面,有问题的人员都会随机指到某一个工作人员信息中去。

    好了,有趣的背景已介绍完毕,找到问题,解决就好办了。根据人员Dirperson表补缺失的人员名称(DiepersonName)数据。以下是我写了一个Job用来修复错误的数据,可供参考。

    static void Sunny_updateHcmworkerName(Args _args)
    {
        HcmWorker           hcmWork;
        DirPerson           dirPerson;
        DirPersonName       dirPersonName;
        container           con;
    
        while select hcmWork
            join dirPerson
              where hcmWork.Person == dirPerson.RecId
        {
            select  firstOnly  dirPersonName
            where dirPersonName.Person == dirPerson.RecId;
    
            if(!dirPersonName)
            {
                con = DirPerson::splitNameParts(dirPerson.Name);
                dirPersonName.clear();
                dirPersonName.initValue();
                dirPersonName.Person          = dirPerson.RecId;
                dirPersonName.FirstName       = conPeek(con, 1);
                dirPersonName.MiddleName      = conPeek(con, 2);
                dirPersonName.LastName        = conPeek(con, 3);
                dirPersonName.ValidFrom       = dirPerson.createdDateTime;
                dirPersonName.ValidTo         = DateTimeUtil::maxValue();
                dirPersonName.insert();
    
                info(hcmWork.PersonnelNumber);
            }
        }
    }
    

      

  • 相关阅读:
    C# 让程序自动以管理员身份运行
    [转]SAP算号器 license key Developer Access Key 完美解决方案
    【原创】项目性能优化全纪录(一) 存储过程优化
    treeview的遍历
    .NET求职笔试题目(续)
    SQL server 数据同步 Merge 的一个小bug
    use Stored procedure return a tabel(存储过程返回table)
    四种sql server 数据库分页的测试
    十五个世界最顶级的技术类博客网站
    层的拖动与隐藏
  • 原文地址:https://www.cnblogs.com/sunny-technology/p/11401406.html
Copyright © 2011-2022 走看看