ok,自动提交流程的方法
var process = getDocProcess(applicationid);
var flowid = '11e3-2974-011957ad-aba0-fb2370a94674';//要启动流程的id
var params = new Packages.cn.myapps.base.action.ParamsTable();
params.setParameter("_flowid", flowid);
process.doStartFlowOrUpdate(doc, params, webuser);
可以参照这个帖子http://www.teemlink.com/bbs/view ... 1%BD%BB%C1%F7%B3%CC
doc就是文档,例如var doc = getCurrentDocument();
var sql = "select * from tlk_xxx";
var doc = findBySQL(sql);
var datas = queryBySQL(sql);
for(var it = datas.iterator();it.hasNext();){
var doc = it.next();
}
这样明白了吧?
下面是我的代码 麻烦看看
var process = getDocProcess(getApplication());
var flowid="6688C51C-7C8A-4204-AC50-F1EED30C2A4E";
var sql = " select * from TLK_PEIHUOCLASS where STATE is null";
println(sql);
var datas = queryBySQL(sql);
println(datas);
for(var it = datas.iterator();it.hasNext();){
var doc = it.next();
doc.setFlowid(flowid);
println("doc++++++++++"+doc);
var params =new Packages.cn.myapps.base.action.ParamsTable();
params.setParameter("_flowid",flowid);
println("params++++++++++"+params);
var user = doc.getAuthor();
var webuser = new Packages.cn.myapps.core.user.action.WebUser(user);
println("webuser++++++++++++"+webuser);
process.doStartFlowOrUpdate(doc,params,webuser);
}
你看看我的代码错在哪了? 点击会报错的
报错如下
JsUtil: select * from TLK_PEIHUOCLASS where STATE is null
JsUtil:[Document:GoldMarketSystem/test子流程/peihuoclass
product123
number456.0
]
JsUtil:doc++++++++++Document:GoldMarketSystem/test子流程/peihuoclass
product123
number456.0
JsUtil:params++++++++++{_flowid=6688C51C-7C8A-4204-AC50-F1EED30C2A4E}
JsUtil:webuser++++++++++++cn.myapps.core.user.action.WebUser@2708ee1b
org.mozilla.javascript.WrappedException: Wrapped java.lang.NullPointerException (11e3-b098-b117a093-876c-b3d3e668405e-1203565260292-1203565260293)..Action#24)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Unknown Source)
at org.mozilla.javascript.MemberBox.invoke(Unknown Source)
at org.mozilla.javascript.NativeJavaMethod.call(Unknown Source)
at org.mozilla.javascript.optimizer.OptRuntime.callN(Unknown Source)
at org.mozilla.javascript.gen.c43._c0(RELATION(11e3-b098-b117a093-876c-b3d3e668405e-1203565260292-1203565260293)..Action:24)
at org.mozilla.javascript.gen.c43.call(RELATION(11e3-b098-b117a093-876c-b3d3e668405e-1203565260292-1203565260293)..Action)
at org.mozilla.javascript.ContextFactory.doTopCall(Unknown Source)
at org.mozilla.javascript.ScriptRuntime.doTopCall(Unknown Source)
at org.mozilla.javascript.gen.c43.call(RELATION(11e3-b098-b117a093-876c-b3d3e668405e-1203565260292-1203565260293)..Action)
at org.mozilla.javascript.gen.c43.exec(RELATION(11e3-b098-b117a093-876c-b3d3e668405e-1203565260292-1203565260293)..Action)
at cn.myapps.core.macro.runner.JavaScriptRunner.run(JavaScriptRunner.java:135)
at cn.myapps.core.workflow.element.FlowDiagram.runAction(FlowDiagram.java:1324)
at cn.myapps.core.workflow.engine.StateMachine.flowTo(StateMachine.java:487)
at cn.myapps.core.workflow.engine.StateMachine.toNext(StateMachine.java:374)
at cn.myapps.core.workflow.engine.StateMachine.manual2Next(StateMachine.java:317)
at cn.myapps.core.workflow.engine.StateMachine.doFlow(StateMachine.java:139)
at cn.myapps.core.workflow.storage.runtime.ejb.FlowStateRTProcessBean.doApprove(FlowStateRTProcessBean.java:283)
at cn.myapps.core.workflow.storage.runtime.ejb.FlowStateRTProcessBean.doApprove(FlowStateRTProcessBean.java:210)
at cn.myapps.core.dynaform.document.ejb.DocumentProcessBean.doFlow(DocumentProcessBean.java:255)
at cn.myapps.core.dynaform.activity.ejb.type.FlowProcessing.doExecute4FlowProcessing(FlowProcessing.java:136)
at cn.myapps.core.dynaform.activity.ejb.type.FlowProcessing.doExecute(FlowProcessing.java:68)
at cn.myapps.core.dynaform.activity.ejb.Activity.execute(Activity.java:1442)
at cn.myapps.core.dynaform.activity.action.ActivityRunTimeAction.doAction(ActivityRunTimeAction.java:281)
at sun.reflect.GeneratedMethodAccessor600.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:365)
at com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:217)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:191)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept