1. 流程节点配置

1.1. 基本参数

image-20190726094728534

1.2. 执行人

image-20190726094825684

1.3. 开发

1.3.1. 工作单提交前

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

image-20190726100135697

JS常用结构举例如下:

image-20190726104533511

/*建议定义自己的方法,以避免和平台的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);
        }
    });
}

results matching ""

    No results matching ""