|
|
【myApps/OBPM版本号】:v5.1
【浏览器类型】:Chrome/其他
【联系方式-QQ】:452828118
【联系电话】: 请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
在表单中增加一个算定义按钮,实现的需求是让用户根据业务需要回退"XX制单"节点,以下是回退功能的代码:
(function (){
var doc = getCurrentDocument();
var orderId = doc.getItemValueAsString("采购订单编号");
if (isNotNull(orderId)){
var tableName = "tlk_gy_cg_01_order_main";
var indexField = "ITEM_编号";
var orderDoc = LoadByIndexFieldValue(tableName, indexField, orderId, true);
var curDoc = findDocument(orderDoc.getId());
//采购订单流程回退
RollBackFlow(curDoc);
} else {
println("没有采购订单编号,不充许回退!");
}
})()
function RollBackFlow(orderDoc){
var user = getWebUser();
var curDoc = orderDoc;
var docProcess = getDocumentProcess();
var flowID = getFlowID(curDoc); //获取流程编号
var params = createParamsTable();
params.setParameter("_flowid", flowID);
var nextNodeIds = new Array();
var curNodeId = "1701413641577"; //结束(付款申请)
nextNodeIds[0] = "1701409945100"; //XX制单
var flowOption = "86"; //干预强退
var comment = "退回到采购组采购";
println("docProcess=" + docProcess); //通过后台打印结果,值不为空
println("params=" + params);//通过后台打印结果,值不为空
println("curDoc=" + curDoc);//通过后台打印结果,值不为空
println("curNodeId=" +curNodeId );//通过后台打印结果,值不为空
println("nextNodeIds=" + nextNodeIds);
println("flowOption=" + flowOption);
println("comment=" + comment);
println("user=" +user );
//docProcess.doFlow(curDoc,params,curNodeId,nextNodeIds,flowOption,comment,user);
FLOW.backFlow(flowID, curNodeId, nextNodeIds, comment, user, curDoc);
}
问题:执行FLOW.backFlow(flowID, curNodeId, nextNodeIds, comment, user, curDoc);时报空指针错误,我打印方法中的各个参数均有数值不为空;更换docProcess.doFlow(curDoc,params,curNodeId,nextNodeIds,flowOption,comment,user); 方法进行回退同样是报空指针错误,请问我需要怎么排查异常?
|
|