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

QQ登录

只需一步,快速开始

楼主: shuaigej

[结贴] 批量流转的问题

[复制链接]

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-7-7 14:41:38 | 显示全部楼层
您没好好看我的代码,贴出核心程序也无法解决我的bug,我只能自己解决了,上面的报错是因为普通数组不能直接传参造成的,必须先定义  var rows_task21 = new biz.Request.ListParam();然后把数组再转换成ListParam才可以,要不然不认。上面的问题解决了,现在单独给第一组批量也能成功,单独给第二组批量也能成功,只是把第一组和第二组混合到一起后,就无法一次性批量完成,即:点完按钮后,只会把第二组的批量完,留着第一组的,然后再次点击按钮,才能把剩余的第一组批量完成。如下是按钮的执行框架:

    Model.prototype.button1Click = function(event)
    {
        for(var i=0;i<rowIDs.length;i++)
        {


             if(temp3.indexOf("节日") == -1)
             {
                 var tasks1=......      //第一组批量后即结束
                 var p = this.comp("process");
                 p.advanceQueryExt(tasks1);

             }
             else
             {
                 var tasks2=...... //第二组批量后进入下一节点
              }
         }




              var params1 = new biz.Request.ActionParam();
              params1.setList("tasks",tasks2);

              biz.Request.sendBizRequest({
                            dataType: "application/json",
                            action: "batchAdvanceProcess1Action",
                            "context" : this.getContext(),
                           parameters: params1,

                           callback: function(result) {
                                if (result.state) {

                            stand11=result.response;  

                                                  }
                                                      }
                                           })

       }




        Model.prototype.processBeforeAdvance = function(event){......}


回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-7-7 14:51:52 | 显示全部楼层
两个调用的不一样,推荐分开两个action去实现
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-7-7 14:54:32 | 显示全部楼层
我是两个action,在Model.prototype.processBeforeAdvance = function(event){....}里用的是另一个action
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-7-7 15:06:50 | 显示全部楼层
前面已经说了,后台流转的不需要在前端流转,那么就不会进到process的流转前事件中processBeforeAdvance

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



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

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-7-7 15:32:40 | 显示全部楼层
本帖最后由 shuaigej 于 2016-7-7 15:38 编辑

好,在我把两个action都放在processBeforeAdvance里了,现在执行还是不正常,不正常的现象有:第一种情况:我页面multiselect默认全选,但当我点击批量按钮后,页面没动,全选框还留着,但是list里的checkbox都变成没选中状态了,我必须再次点击才能生效,如图是第一次点击后的状态: 无标题.png


第二种:提示:执行流转查询出错, 任务标识不允许为空
编码:JUSTEP230033
隐藏详细
Error: {"code":"JUSTEP230033","message":"执行流转查询出错, 任务标识不允许为空"} at Object.l.create

第二种的状态时关闭页面,重新打开,发现数据就都批量通过了
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-7-7 15:41:51 | 显示全部楼层
不能把在后台直接流转的那个action放到processBeforeAdvance里啊,因为后台直接流转的时候,不要在前端调用process的流转,只需要把要流转的task的值直接传给action就可以,在前端不调用process的流转就不会执行到processBeforeAdvance里


全选状态可以在批量流转后应该调用了data的刷新吧,data刷新后参考http://docs.wex5.com/bex5-ui-question-list-10032/中的方式取消全选
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-7-7 15:56:06 | 显示全部楼层
本帖最后由 shuaigej 于 2016-7-7 15:57 编辑

我一开始把第二个biz.Request.sendBizRequest放到Model.prototype.button1Click = function(event){}里,114楼说后台流转的不需要在前端流转,
现在说不能放到processBeforeAdvance里,那我到底放到哪里?能说得明白点么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-7-7 16:03:26 | 显示全部楼层
直接在后端流转的应该在获取到task就调用,放到if else的判断中
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-7-7 16:04:38 | 显示全部楼层
jishuang 发表于 2016-7-7 16:03
直接在后端流转的应该在获取到task就调用,放到if else的判断中

我111楼就是这样写的阿,但是不同步阿
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-7-7 16:08:53 | 显示全部楼层
在调用action时设置参数
directExecute:true 在批事务中是否立即执行
看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-20 00:06 , Processed in 0.072989 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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