1. 流程节点配置
1.1. 基本参数

1.2. 执行人

1.3. 开发
1.3.1. 工作单提交前
配置在工作提交前,执行的JavaScript逻辑,可以自行定义,如下图:

JS常用结构举例如下:

/*建议定义自己的方法,以避免和平台的js变量和对象冲突,建议格式work_3262_main;
另外有些对象可用,如:
_pobj2.branch 当前公司信息
_pobj2.user 当前用户信息;
biz 对应表单的网页window对象,可以直接biz.$("selector")等jQuery处理
......
*/
function work_3262_main(inputparma){
var work_3262_submethod1 = function(paraminput){
/*建议首先中断提交,只要不是continue就行,逻辑完成后再设为continue,并调用applyjob_()继续提交*/
operation="abort";
var error1 = [];/*建议定义一个错误对象*/
if(browser.ismobile){/*判断设备,没有手机端的无所谓*/
/*你的代码*/
if(某个情况) error1.push("第x行,小计为0,请检查") ;/*如果异常记录异常原因*/
} else{/*判断设备PC端*/
/*你的代码*/
if(某个情况) error1.push("第x行,小计为0,请检查") ;/*如果异常记录异常原因*/
}
/*如果错误就返回异常信息,并终止提交*/
if (error1.length>0) {
alertold(error1.join("\n")) ;
operation="abort";
}
else
{
loading(true,"上传至xxx...") ;
/*如果参数内容是json对象,建议转为字符串并tohex*/
var currentparam0 = JSON.stringify({
"FBATCHNO":FBATCHNO,
"FCOMPNO":FCOMPNO,
"FSTORE":repoOut,
"FSYSTEMDATE":FSYSTEMDATE,
"FCUSTTELNO":FCUSTTELNO,
"FANAME":FANAME,
"FBNAME":FBNAME,
"EBSOrderItem":arr,
"FORDERTYPE":paraminput
});
runsql4xml('yousqlname',{postdata:currentparam0},function(iseof,data1,dsname1){
if(!iseof&&dsname1=="t1"&&dsname1!='error'){
if($f[_result]=='101'){
applyjob_();/*继续提交*/
loading(false) ;/*隐藏进度条*/
alertold("上传POS成功,订单号:"+FBATCHNO);/*原生弹窗提示*/
}else if($f[_result]=='102'){
loading(false) ;
alertold("创建POS销售单失败:\r\n"+$f[_errorinfo]);
}else {
loading(false) ;
alertold("创建POS销售单时POS系统异常:\r\n"+$f[_errorinfo]);
}
}else if (dsname1=='error'){
alertold("创建POS销售单时POS系统异常:\r\n"+data1);
}
});
}
}
var work_3262_submethod2 = function(){}
if(inputparma=="")
{
work_3262_submethod2();
}else
{
work_3262_submethod1(1);
}
}
/*程序入口,逻辑判断,调用自己的方法,可以通过预置变量wsstatus1拿到当前步骤提交是所选下个步骤分支状态值*/
if (wsstatus1=="结束")
{
if(_pobj2.branch.bc_code=="JH30"){
/*举例:取table_3051明细表实际数据长度*/
if(biz.$("#table_3051 tbody[name=details_auto]").length>0){
work_3262_main(biz.$("td[name=ord_fwlx]").myval());
}
}
}
步骤js最简单示例
/*步骤js最简单示例*/
if (wsstatus1=="结束")
{
var param1 =biz.$("#xxxx").myval();
operation="abort";
runwebservice('你的web服务名',{param1:tohex2(param1)},function(iseof,data1,dsname1){
if(!iseof&&dsname1=="t1"&&dsname1!='error'){
if($f[_result]=='正确你的结果'){
applyjob_();/*继续提交*/
loading(false) ;/*隐藏进度条*/
alertold("上传成功,订单号:");/*原生弹窗提示,或用alert()*/
}
}else if (dsname1=='error'){
alertold("创建POS销售单时POS系统异常:\r\n"+data1);
}
});
}