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

QQ登录

只需一步,快速开始

楼主: guoquanquan

[处理中3] 5.2.7bex5中流程打开页面流转中页面不对,怎么解决?

[复制链接]

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35915
发表于 2018-7-11 09:07:29 | 显示全部楼层
这个只是返回了当前执行者的fid可以不用这个的返回值
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

83

主题

315

帖子

859

积分

高级会员

Rank: 4

积分
859
QQ
 楼主| 发表于 2018-7-11 14:46:04 | 显示全部楼层
jishuang 发表于 2018-7-11 09:07
这个只是返回了当前执行者的fid可以不用这个的返回值

还是报错+++++++++++++
select s ,s.sEURL,s.sActivityName,s.sProcess,s.sActivity,s.sExecutorPersonID from SA_Task s where (s.sStatusID='tesReady' or s.sStatusID='tesExecuting') and s.sKindID='tkTask' and s.sData1='28F7D5F5B9DB4A179003198B8BE997B2'
++//++++++++++
true
2018-07-11 14:41:14 action:<?xml version="1.0" encoding="UTF-8"?>
<action direct-execute="false" process="/QualityManage/TechnologyDoc/process/projectDocApprove/projectDocApproveProcess" activity="showActivity" action-flag="__action_0__" executor="D39184A627274685BEBB620DCA943DCC" execute-context="" name="geturl"><parameters xmlns:xbiz="http://www.justep.com/xbiz#"><parameter name="taskfid"><xbiz:simple type="http://www.w3.org/2001/XMLSchema#String"><![CDATA[28F7D5F5B9DB4A179003198B8BE997B2]]></xbiz:simple></parameter><parameter name="currentPersonID"><xbiz:simple type="http://www.w3.org/2001/XMLSchema#String"><![CDATA[D39184A627274685BEBB620DCA943DCC]]></xbiz:simple></parameter></parameters></action>
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
        at com.justep.system.action.Engine.invokeActions(Native Method)
        at com.justep.system.action.Engine.invokeActions(Unknown Source)
        at com.justep.business.server.BusinessServer.doAction(Unknown Source)
        at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
        at com.justep.business.server.BusinessServer.excute(Unknown Source)
        at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
        at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
        at com.justep.system.action.Engine.invokeAction(Native Method)
        at com.justep.system.action.Engine.invokeAction(Unknown Source)
        at com.justep.model.impl.UtilImplementInstance.invokeAction(Unknown Source)
        at com.justep.system.action.ActionUtils.invokeAction(Unknown Source)
        at TechnologyDoc.geturl(TechnologyDoc.java:1153)
        ... 26 more
Caused by: java.lang.NullPointerException
        at java.lang.String.startsWith(String.java:1252)
        at java.lang.String.startsWith(String.java:1281)
        at ProcessProcedure.executeTask(ProcessProcedure.java:435)
        ... 35 more

这是我写的代码
cuowu.png

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35915
发表于 2018-7-11 15:02:05 | 显示全部楼层
/BIZ/system/logic/code/dsrc/ProcessProcedure.java中加断点调试看看item.getFID()是什么?
40楼发的不是已经执行过了吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

83

主题

315

帖子

859

积分

高级会员

Rank: 4

积分
859
QQ
 楼主| 发表于 2018-7-12 15:46:26 | 显示全部楼层
本帖最后由 guoquanquan 于 2018-7-12 15:49 编辑
jishuang 发表于 2018-7-11 15:02
/BIZ/system/logic/code/dsrc/ProcessProcedure.java中加断点调试看看item.getFID()是什么?
40楼发的不是 ...

item.getFID()是/A100100000000.ogn/A140400000000.ogn/58F5B629D1B542FBB2A68E54F8681B06.local/0DADD57602E2A42DE050007F0100135A.dpt/D39184A627274685BEBB620DCA943DCC@0DADD57602E2A42DE050007F0100135A.psm原来好像是因为从数据库中获取的sExecutorPersonID 为null,但是item.getFID().startsWith(executor)中的executor需要是字符串,所以报错。现在改成了“”不报错了,但是还是不能用,点击流转就还是直接流转走了。 cuowu.png cuowu.png
这是我的代码,是还有什么地方是不对的吗?

public static String geturl(String taskfid,String currentPersonID){
                String isStr = "select s ,s.sEURL,s.sActivityName,s.sProcess,s.sActivity,s.sExecutorPersonID from SA_Task s where (s.sStatusID='tesReady' or s.sStatusID='tesExecuting') and s.sKindID='tkTask' and s.sData1='"+taskfid+"'";
                Table table = KSQL.select(isStr, null, "/system/data", null);
                Iterator<Row> tRows = table.iterator();
                Row row;
                String url="";
                System.out.println(tRows.hasNext());
                if(tRows.hasNext()){
                        row=tRows.next();
                        if(row.getString("sExecutorPersonID")==null){
                                String process=row.getString("sProcess");
                                String activity=row.getString("sActivity");
                                HashMap<String,Object> paramr2 = new HashMap<String,Object>();
                                paramr2.put("task", row.getString("s"));
                                paramr2.put("executor", "");
                                Object ob=com.justep.system.action.ActionUtils.invokeAction(process, activity, "executeTaskAction", row.getString("sExecutorPersonID"), currentPersonID, paramr2);//executeTask();
                                String isStr1 = "select s ,s.sEURL,s.sActivityName,s.sProcess,s.sActivity,s.sExecutorPersonID from SA_Task s where (s.sStatusID='tesReady' or s.sStatusID='tesExecuting') and s.sKindID='tkTask' and s.sData1='"+taskfid+"'";
                                Iterator<Row> tRows1 = table1.iterator();
                                Row row1;
                                if(tRows1.hasNext()){
                                        row1=tRows1.next();
                                        String sEURL=row1.getString("sEURL");
                                        String sActivityName=row1.getString("sActivityName");
                                        String taskid=row1.getString("s");
                                        url=sEURL+"&"+sActivityName+"&"+taskid;
                                          
                                }
                        }else{
                                String sEURL=row.getString("sEURL");
                                String sActivityName=row.getString("sActivityName");
                                String taskid=row.getString("s");
                                url=sEURL+"&"+sActivityName+"&"+taskid;
                        }
                }
               
                return url;
        }



回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35915
发表于 2018-7-12 15:55:47 | 显示全部楼层
从待办打开的和自己代码处理的生成的任务到SA_Task对比一下数据看什么地方不一样
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

83

主题

315

帖子

859

积分

高级会员

Rank: 4

积分
859
QQ
 楼主| 发表于 2018-7-12 16:06:56 | 显示全部楼层
jishuang 发表于 2018-7-12 15:55
从待办打开的和自己代码处理的生成的任务到SA_Task对比一下数据看什么地方不一样 ...

跟之前一样,还两个task不一样 cuowu.png 上面的那个是我获取到的,下面的那个是通过代办任务打开的
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35915
发表于 2018-7-12 16:26:27 | 显示全部楼层
调用executeTaskAction执行后要重新获取当前人任务,用这个任务去执行

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



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

使用道具 举报

83

主题

315

帖子

859

积分

高级会员

Rank: 4

积分
859
QQ
 楼主| 发表于 2018-7-12 16:31:34 | 显示全部楼层
jishuang 发表于 2018-7-12 16:26
调用executeTaskAction执行后要重新获取当前人任务,用这个任务去执行

27楼已经写了 ...

and s.sExecutorPersonID='"+currentPersonID+"'在sql中加上这个,就还是FALSE,去掉,之后输出s.sExecutorPersonID为null
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35915
发表于 2018-7-12 16:36:19 | 显示全部楼层
调用executeTaskAction后看SA_Task中新生成的任务执行者是什么
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

83

主题

315

帖子

859

积分

高级会员

Rank: 4

积分
859
QQ
 楼主| 发表于 2018-7-12 16:47:36 | 显示全部楼层
jishuang 发表于 2018-7-12 16:36
调用executeTaskAction后看SA_Task中新生成的任务执行者是什么

??是item.getFID()吗? cuowu.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-24 13:38 , Processed in 0.079593 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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