找回密码
 注册成为天翎用户
查看: 2977|回复: 13

[楼主失联] 企业微信端提交流程同步数据库异常,PC端却可以

[复制链接]
dannymeng 发表于 2021-10-19 18:00:15 | 显示全部楼层 |阅读模式
【myApps/OBPM版本号】:v4.4- sp XX
【浏览器类型】:Chrome/其他
【联系方式-QQ】:请留下您的QQ号码
【联系电话】:    请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
我们公司有一个需求:员工提交工作外出,经过审批之后,同步人员考勤表。出现的问题是,使用企业微信里面的工作外出应用没有同步到人员考勤表,但是使用pc机访问,却能同步到人员考勤表。请问是不是企业微信端有什么限制?









1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\"已解决可结帖\"
john 发表于 2021-10-19 19:12:24 | 显示全部楼层
可以给一个 具体的截图吗?
回复

使用道具 举报

lillian828 发表于 2021-10-21 15:27:49 | 显示全部楼层
您好,请留下联系方式,方便沟通。谢谢!
回复

使用道具 举报

 楼主| dannymeng 发表于 2021-10-25 11:31:54 | 显示全部楼层
lillian828 发表于 2021-10-21 15:27
您好,请留下联系方式,方便沟通。谢谢!

15914495268
回复

使用道具 举报

 楼主| dannymeng 发表于 2021-10-25 11:38:23 | 显示全部楼层
john 发表于 2021-10-19 19:12
可以给一个 具体的截图吗?

【代码有些复杂,主要功能是将干部报备的时候插入数据到考勤表:外出明细表中】,我在电脑端提交的时候,外出明细表中生成了一条相应的数据,但是企业微信端却没有生成。
if(1==1) {

    var userNumber = getItemValue("员工号");
    var application = getItemValue("姓名");
    var deptId = getItemValue("所属部门");
    //ITEM_考勤日期  
    var startTime = getItemValue("开始时间");
    var endTime = getItemValue("结束时间");
    //ITEM_考勤月度
    //ITEM_考勤状态
    var applicationNumber = getItemValue("申请单号");
    //ITEM_是否销假     null
    //ITEM_是否工作日   逻辑判断  
    //ITEM_特殊字段     null
    //ITEM_出勤状态     干部外出报备
    //ITEM_审批时间     待定
    //ITEM_数据状态     正常
    var submitTime = getItemValue("申请时间");
    var workType = "干部外出报备";
    var domainid=getDomainid();//固定死的企业域id
    var appid=getApplication();
   
   
    var begindate=format(getItemValueAsDate("开始时间"),'yyyy-MM-dd');
    var enddate=format(getItemValueAsDate("结束时间"),'yyyy-MM-dd');
    var loginno=userNumber;
    var time=null;
    var statelabel="流程结束";

    //获取请假天数:
    var starttime =getItemValueAsDate("开始时间");
    var endtime = getItemValueAsDate("结束时间");
    var day = 0;
    if(starttime!=null&&endtime!=null)
    {
        starttime = format (starttime,"yyyy-MM-dd HH:mm:ss");
        endtime= format (endtime,"yyyy-MM-dd HH:mm:ss");
        day = diffDays(starttime,endtime);
        day  = day +1;
    }
    println("day: " + day);
    var uuid_link = new Packages.cn.myapps.util.sequence.Sequence();
    var sql="";
    println("this is a tag!!!");
    if(day==1){
        var begin=format(getItemValueAsDate("开始时间"),'HH:mm:ss');
        var end  =format(getItemValueAsDate("结束时间"),'HH:mm:ss');
        var dayint=parseInt(getItemValueAsString("开始时间").substr(8,2));
        
        var month=null;
        //day
        if(dayint>=26){
            month=format(adjustMonth(getItemValueAsDate("开始时间"),1),"yyyy-MM-dd").substr(0,7);      
        }else{
            month=getItemValueAsString("开始时间").substr(0,7);
        }
        var timestring=begindate+" 08:30:00";
        var workdateornot=isWorkingTimeByCalendar(format(getItemValueAsDate("开始时间"),'yyyy-MM-dd HH:mm:ss'),"11e5-f7fd-c9c86cfb-90ba-67453cd96f0f");//isWorkingTime(time);
        println("workdateornot:" + workdateornot);
        if(workdateornot == true){
            sql="insert into tlk_外出明细(ID,ITEM_员工编号,ITEM_员工姓名,ITEM_所属部门,ITEM_考勤日期,ITEM_开始时间,ITEM_结束时间,ITEM_考勤月度,ITEM_考勤状态,ITEM_请假单号,ITEM_是否销假,ITEM_是否工作日,";
            sql=sql+"ITEM_出勤状态,ITEM_数据状态,ITEM_提单时间,applicationid,domainid,ITEM_审批时间,item_外出类型) values(";
            sql=sql+"'"+ uuid_link.getSequence()+"','"+loginno+"','"+application+"','"+deptId+"','"+timestring+"','"+begin+"','"+end+"','"+month+"','"+statelabel+"','"+applicationNumber+"','','"+workdateornot+"',";
            sql=sql+"'工作外出','正常','"+submitTime+"','"+appid+"','"+domainid+"','"+submitTime+"','"+workType+"')";
          //插入数据库
            insertByDSName("WGJ",sql);
        }

    }else{
   
        for(var i=0;i<day;i++){
            time=adjustDay(getItemValueAsDate("开始时间"),i);
   
            var timeformat=$TOOLS.DATE_UTIL.getDateTimeStr(time);
            var timestring=format(time,"yyyy-MM-dd")+" 08:30:00";
            time=parseDate(timestring, "yyyy-MM-dd HH:mm:ss");
            var workdateornot=isWorkingTimeByCalendar(time,"11e5-f7fd-c9c86cfb-90ba-67453cd96f0f");//isWorkingTime(time);
            println("workdateornot:" + workdateornot);

            if(workdateornot==true){
                var dayint=parseInt(timestring.substr(8,2));
                var month=null;
                //day
                if(dayint>=26){
                    month=format(adjustMonth(time,1),"yyyy-MM-dd").substr(0,7);     
                }else{
                    month=timestring.substr(0,7);
                }
   
                var begin=null;
                var end=null;
                if(i==0){
                    begin=format(getItemValueAsDate("开始时间"),'HH:mm:ss');
                    end="23:59:59";
                    
                }else if(i==day-1)
                    {
                    begin="00:00:00";
                    end=format(getItemValueAsDate("结束时间"),'HH:mm:ss');
                    
                }else
                {
                    begin="00:00:00";
                    end="23:59:59";
                    
                }
            sql="insert into tlk_外出明细(ID,ITEM_员工编号,ITEM_员工姓名,ITEM_所属部门,ITEM_考勤日期,ITEM_开始时间,ITEM_结束时间,ITEM_考勤月度,ITEM_考勤状态,ITEM_请假单号,ITEM_是否销假,ITEM_是否工作日,";
            sql=sql+"ITEM_出勤状态,ITEM_数据状态,ITEM_提单时间,applicationid,domainid,ITEM_审批时间,item_外出类型) values(";
            sql=sql+"'"+ uuid_link.getSequence()+"','"+loginno+"','"+application+"','"+deptId+"','"+timestring+"','"+begin+"','"+end+"','"+month+"','"+statelabel+"','"+applicationNumber+"','','"+workdateornot+"',";
            sql=sql+"'工作外出','正常','"+submitTime+"','"+appid+"','"+domainid+"','"+submitTime+"','"+workType+"')";
  
                //插入数据库
                insertByDSName("WGJ",sql);
            }

        }
    }
}
回复

使用道具 举报

john 发表于 2021-10-25 15:08:19 | 显示全部楼层
是用什么同步的?脚本吗
回复

使用道具 举报

 楼主| dannymeng 发表于 2021-10-26 11:24:03 | 显示全部楼层
john 发表于 2021-10-25 15:08
是用什么同步的?脚本吗

是的                                
回复

使用道具 举报

john 发表于 2021-10-26 14:19:58 | 显示全部楼层
可以发下脚本吗
回复

使用道具 举报

 楼主| dannymeng 发表于 2021-10-26 16:16:00 | 显示全部楼层
john 发表于 2021-10-26 14:19
可以发下脚本吗

上述代码就是我的脚本啊【可能我们理解脚本的意思不一样】
我将它放在提交流程的时候,“提交后触发”的框里面
回复

使用道具 举报

john 发表于 2021-10-26 17:32:19 | 显示全部楼层
PC端可以,企业微信不行,可能是企业微信不兼容
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-14 16:11

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表