天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

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

[已解决] 无法通过设置审批时限跳过审批节点【Bug #11146】

[复制链接]
亨氏中国 发表于 2014-1-23 16:02:00 | 显示全部楼层 |阅读模式
本帖最后由 sophie 于 2014-2-21 11:25 编辑

你好,
现有一个通过设置审批时限来跳过审批节点的设置,目前取审批人没有问题,但审批时限那里得出的值为过去的一个时间,系统不给跟过该审批节点。之前有过此类问题,给出的答复是因为取审批人中用到了函数queryBySQL,而此函数不能自动取得domainid和applicaitonid,并给出了解决方案,现在系统升级后按照该方法更改了queryBySQL函数,但仍然不能跳过,不知是不是系统BUG,烦请帮忙解决。谢谢
1. 以下为取审批人脚本
#include "actionlib2";
var deptid=getItemValue("Department");
var rtn=GetHeaderByDeptidByLevel2(deptid,3);
rtn;
2. 以下为审批时限设置,打印出的值为“JsUtil:2013-01-01 00:00:00”
#include "actionlib2";
var deptid=getItemValue("Department");
var rtn=GetHeaderByDeptidByLevel2(deptid,3);
var value=CompareNodeApprover(rtn);
println(value);
value;
3. 取审批人用到的函数GetHeaderByDeptidByLevel2如下:
function GetHeaderByDeptidByLevel2(deptid,level){
var user = createObject("java.util.ArrayList");
var deptProcess = getDepartmentProcess();
var dept  = deptProcess.doView(deptid);
var applicationid="11e3-0e31-31396c8b-9613-afcc9747d9a9";
var domainid="11e3-13a3-ac7df636-8c72-c1df28dfa4af";
var process = getDocProcess(applicationid);
if(dept != null ){
        var deptlevel=dept.getLevel();
        var dept_temp=dept;
        while (deptlevel>level)
        {
                dept_temp=dept_temp.getSuperior();
                deptlevel=dept_temp.getLevel();
        }
        if (dept_temp!=null)
        {
                var approver=dept_temp.getField1();
                if (approver!=null && approver.length()>0)
                {
                        var sql="select id,domainid,field2 as item_field2 from "+ getDataBaseName()+"t_user where field2='"+approver+"'";
                        var query=process.queryBySQL(sql,domainid).datas;
                        if (query!=null)
                        {
                                var iter=query.iterator();
                                if (iter!=null && iter.hasNext())
                                {
                                        var doc=iter.next();
                                        var userid=doc.getId();
                                        var usertemp=getUserById(userid);
                                        user.add(usertemp);
                                       
                                }
                               
                        }
                }

        }
}
return user
}
sophie 发表于 2014-1-23 16:07:17 | 显示全部楼层
请问还之前你们提供数据的那个表单么?如果是请问上次你们提供的数据中是否能重现该问题呢,稍后用你们的数据测试一下。
 楼主| 亨氏中国 发表于 2014-1-23 16:20:29 | 显示全部楼层
回复 2# sophie


    这个问题是最新增加的审批节点,稍候发最新数据库给到你。
sophie 发表于 2014-1-23 16:26:43 | 显示全部楼层
好的。
 楼主| 亨氏中国 发表于 2014-1-23 17:09:13 | 显示全部楼层
数据库已发给你了,请查收一下
sophie 发表于 2014-1-23 17:15:36 | 显示全部楼层
好的,请你们相关同事提供一下重现该问题的具体位置与账号,谢谢。
 楼主| 亨氏中国 发表于 2014-1-23 21:17:06 | 显示全部楼层
问题位置点: 问题位置.docx (276.34 KB, 下载次数: 1222)
sophie 发表于 2014-1-24 09:09:23 | 显示全部楼层
好的,稍后本地测试一下。
 楼主| 亨氏中国 发表于 2014-1-24 17:44:21 | 显示全部楼层
请问查出问题的原因了吗?
 楼主| 亨氏中国 发表于 2014-1-24 17:48:43 | 显示全部楼层
请问查出问题的原因了吗?

本版积分规则

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

GMT+8, 2026-8-13 13:40

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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