起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3880|回复: 13

[结贴] 流程批量流转的问题

[复制链接]

196

主题

485

帖子

1839

积分

金牌会员

Rank: 6Rank: 6

积分
1839
QQ
发表于 2014-8-5 09:59:59 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
本帖最后由 谈少华09 于 2014-8-5 10:34 编辑

如下图选中某一条记录,但是鼠标的焦点不在当前记录的时候,点击流转,无法实现回报错,只有选中当前行,鼠标事件在当前行,才不会出现如下错误,以下是我的代码,哪位高人能指点指点。
        var grid = justep.xbl("grid1").grid;        //获取grid                var checkColIndex = grid.getColIndexById("calcCheckBox");        //获取选中的id
                //获取选择行的rowId
                var arr = grid.getCheckedRows(checkColIndex);                //此为一个数组
                if(arr != ""){
                        if(arr.length>0 ){
                                arrs = arr.split(",");
                                var data = justep.xbl("datapersonnelDeclare");//代表业务表
                                var dataTask = justep.xbl("dataTask");//流程表:sa_task
                                dataTask.refreshData();
                                var p = justep.xbl("process1");
                                for(var i=0;i<arrs.length;i++){
                                        var ids = dataTask.find(["sData1"], [arrs], false, false, false);
                                        if(ids.length<=0){
                                                p.start(justep.Context.getCurrentProcess(), data.getValue("p_orgname",arrs)+":申请单",arrs);
                                        }
                                }
//                                processUtil.setTaskDefaultContent(justep.xbl("dataTask"),justep.xbl("datapersonnelDeclare").getCurrentID(),"请领导审批!");
                                processUtil.setTaskDefaultContent(justep.xbl("dataTask"),arrs[0],"请领导审批!");
                                //打开流转对话框
                                var taskid = justep.xbl("dataTask").find(["sData1"], [arrs[0]], true, false, false);
                                p.advanceQueryExt(taskid);
                        }else{
                                alert("您还未选中记录");
                        }
                }

报错的原因是:taskId 无法获取。
b.jpg
aa.jpg

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-8-6 14:37:20 | 显示全部楼层

dataTask上直接加过滤条件啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 1 反对 0

使用道具 举报

发表于 2014-8-5 10:52:07 | 显示全部楼层
获取的数组里第一个值好像是为空的,你debugger看一下
回复 支持 反对

使用道具 举报

196

主题

485

帖子

1839

积分

金牌会员

Rank: 6Rank: 6

积分
1839
QQ
 楼主| 发表于 2014-8-5 10:54:51 | 显示全部楼层
数组里面的值肯定能获取得到的,确定没有问题,而且已经debugger多次。
回复 支持 反对

使用道具 举报

发表于 2014-8-5 10:56:11 | 显示全部楼层
谈少华09 发表于 2014-8-5 10:54
数组里面的值肯定能获取得到的,确定没有问题,而且已经debugger多次。

arr[0],没有为空的时候吗?
回复 支持 反对

使用道具 举报

196

主题

485

帖子

1839

积分

金牌会员

Rank: 6Rank: 6

积分
1839
QQ
 楼主| 发表于 2014-8-5 11:11:19 | 显示全部楼层
可以非常肯定,绝对没有。
回复 支持 反对

使用道具 举报

310

主题

4938

帖子

4767

积分

论坛元老

Rank: 8Rank: 8

积分
4767
QQ
发表于 2014-8-5 11:17:58 | 显示全部楼层
谈少华09 发表于 2014-8-5 11:11
可以非常肯定,绝对没有。

楼主,sData1是业务数据ID,你要获取代办任务id;
你打个断点,看看下面这句的taskid是不是代办任务id
var taskid = justep.xbl("dataTask").find(["sData1"], [arrs[0]], true, false, false);

还有你看看下面帖子中是如何获取代办任务tasks的
http://bbs.justep.com/thread-39581-1-1.html

评分

参与人数 1 +3 收起 理由
jishuang + 3 赞一个!

查看全部评分

QQ:179785966
回复 支持 反对

使用道具 举报

发表于 2014-8-5 12:11:02 | 显示全部楼层
谈少华09 发表于 2014-8-5 11:11
可以非常肯定,绝对没有。

那可能是我记错了
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-8-5 14:27:36 | 显示全部楼层
justep.xbl("dataTask").find(["sData1"], [arrs[0]], true, false, false);
取出来的数据会有多条需要加过滤条件才可以的
SA_Task.sKindID='tkTask'  SA_Task.sStatusID='tesExecuting'
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

196

主题

485

帖子

1839

积分

金牌会员

Rank: 6Rank: 6

积分
1839
QQ
 楼主| 发表于 2014-8-6 13:50:14 | 显示全部楼层
jishuang 发表于 2014-8-5 14:27
justep.xbl("dataTask").find(["sData1"], [arrs[0]], true, false, false);
取出来的数据会有多条需要加过 ...

加在哪里?
回复 支持 反对

使用道具 举报

196

主题

485

帖子

1839

积分

金牌会员

Rank: 6Rank: 6

积分
1839
QQ
 楼主| 发表于 2014-8-6 13:56:22 | 显示全部楼层
jishuang 发表于 2014-8-5 14:27
justep.xbl("dataTask").find(["sData1"], [arrs[0]], true, false, false);
取出来的数据会有多条需要加过 ...

另外流程在弹出选择执行者的时候,就已经启动了,这时代办中就已经有代办了,可是如果我没有选择执行者,点击“取消”了,那启动的流程如何不让在代办中显示。
QQ截图20140806135331.jpg
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-18 08:42 , Processed in 0.075813 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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