web扩展-报销单提交时按支付方式校验银行账号是否必填原创
金蝶云社区-纯生啤酒_
纯生啤酒_
3人赞赏了该文章 1,011次浏览 未经作者许可,禁止转载编辑于2023年07月28日 11:36:32
  1. image.png

    在web扩展平台导入费用报销单业务数据源,并扩展编辑方案

  2. image.png

    在设置这块可以看到submit方法可以在before,overwrite,after中配置,由于我们只是做字段校验,最好是在submit方法before前,这块需要注意在before方法中会先走二开逻辑,再走标准产品逻辑,所以没必要再调用标准保存方法;

  3. image.png

    image.png

    在页面功能中新增我们的submitbefore方法,并在外面保存

  4. image.png

    进入脚本在生成好的checkPayMod方法中加入以下脚本:

               _self.fireEvent("fieldOnStoreEvent");

                var model = _self._model;

               if(model.collectionEntries){

                    length = model.collectionEntries.length;

                    for(var i = 0; i < length; i++){

                       object = model.collectionEntries[i];

                       if(object == null) continue;

                       if(object.payMode  && object.payMode.name && object.payMode.name.l2 == "电汇" && (object.payerAccount == null || object.payerAccount.length == 0)){

                         waf.msgBox.showWarning({

                                        summaryMsg:"支付方式为电汇时,银行账号不能为空"

                           });

                           return false;

                        }

                    }

               }
    这块目前用的是信息弹框,会直接显示在屏幕正中,如果觉得不美观可以用msgarea滑动显示提示消息

  5. image.png

    如图,当支付方式为电汇是,可以弹框提示这样在银企那边就可以防止这块账号为空,同时我们还可以利用正则表达式防止账号中有特殊符号

赞 3