泛微E9开发 限制明细表列的值重复

限制明细表列的值重复

    • 1、需求说明
    • 2、实现方法
    • 3、扩展知识点
      • 3.1 修改单个字段值(不支持附件类型)
        • 3.1.1 格式
        • 3.1.2 参数
        • 3.1.3 案例
      • 3.2 获取明细行所有行标示
        • 3.2.1 格式
        • 3.2.2 参数说明

1、需求说明

限制明细表的“类型”字段,在同一个流程表单提交时不能重复,比如已经选择了“一级项目”这个值,那么其他明细行就不能选择这个值了,只允许选择其他的值。

  1. 序号1、2行的明细表已经选择了“1级项目”、“2级项目”值,当序号3选择“1级项目”或“2级项目”值时会自动清空
    在这里插入图片描述
  2. 序号1、2行的明细表已经选择了“1级项目”、“2级项目”值,当序号3选择“3级项目”时通过验证
    在这里插入图片描述

2、实现方法

代码块

<script>var lxField1 = WfForm.convertFieldNameToId("lx","detail_1");//获取明细表选择的类型值getAllSelect = function(){var indexs = WfForm.getDetailAllRowIndexStr("detail_1");var indexArr = indexs.split(',');var selArr = [];var passFlg = true;for(var i = 0;i<indexArr.length;i++){var lxValue = WfForm.getFieldValue(lxField1+'_'+indexArr[i]);//如果值为空,不需要判断if(lxValue == ""){continue;}if(selArr.indexOf(lxValue) > -1){passFlg = false;break;}else{selArr.push(lxValue);}}return passFlg;}jQuery(document).ready(function(){debugger;WfForm.bindDetailFieldChangeEvent(lxField1,function(id,rowIndex,lxValue){if(lxValue){var flg = getAllSelect();if(flg == false){WfForm.changeFieldValue(lxField1+'_'+rowIndex,{value:" "});}}});})
</script>

3、扩展知识点

3.1 修改单个字段值(不支持附件类型)

此方法修改的字段如果涉及到触发联动、单元格格式化等,修改完值会自动触发联动/格式化

3.1.1 格式

changeFieldValue: function(fieldMark, valueInfo)

3.1.2 参数
参数参数类型必须说明
ieldMarkString字段标示,格式field${字段ID}_${明细行号}
valueInfoJSON字段值信息,非浏览按钮字段格式为{value:”修改的值”};
3.1.3 案例
//修改文本框、多行文本、选择框等字段类型
WfForm.changeFieldValue("field123", {value:"1.234"});//修改浏览框字段的值,必须有specialobj数组结构对象
WfForm.changeFieldValue("field11_2", {value: "2,3",specialobj:[{id:"2",name:"张三"},{id:"3",name:"李四"}]
});  //修改check框字段(0不勾选、1勾选)
WfForm.changeFieldValue("field123", {value:"1"});    //针对单行文本框字段类型,只读情况,支持显示值跟入库值不一致
WfForm.changeFieldValue("field123", {value: "入库真实值",specialobj: {showhtml: "界面显示值"}
});

3.2 获取明细行所有行标示

3.2.1 格式

getDetailAllRowIndexStr: function(detailMark)

3.2.2 参数说明
参数参数类型必须说明
detailMarkString明细表标示,明细1就是detail_1,以此递增类推
console.log(WfForm.getDetailAllRowIndexStr("detail_2"));    //输出1,3...等等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/38789.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【全网首发】双字重叠语序验证码识别

【省流&#xff1a;打算直接测试效果的可以访问这个网址】 http://decaptcha.ai?project_namenetease_zh_overlap 【实现方案】 如图所示&#xff0c;我们能看到&#xff0c;比起以往的“单个字”语序点选&#xff0c;这个验证码的难点在于“重叠汉字“&#xff0c;我们知道…

【Python机器学习】模型评估与改进——简单的网格搜索

为了提升模型的泛化性能&#xff0c;我们可以通过调参来实现。 在尝试调参之前&#xff0c;重要的是理解参数的含义&#xff0c;找到一个模型的重要参数&#xff08;提供最佳泛化性能的参数&#xff09;的取值是一项棘手的任务&#xff0c;但对于几乎所有模型和数据集来说都是…

API-Window对象

学习目标&#xff1a; 掌握Window对象 学习内容&#xff1a; BOM&#xff08;浏览器对象模型&#xff09;定时器-延时函数JS执行机制location对象navigation对象history对象 BOM&#xff08;浏览器对象模型&#xff09;&#xff1a; BOM是浏览器对象模型。 window对象是一个全…

Windows 11的市场份额越来越大了,推荐你升级!

7月1日&#xff0c;系统之家发布最新数据&#xff0c;显示Windows 11操作系统的市场份额正在稳步上升。自2021年10月Windows 11发布以来&#xff0c;Windows 10一直占据着市场主导地位&#xff0c;当时其市场份额高达81.44%。然而&#xff0c;随着时间的推移&#xff0c;Window…

鸿蒙学习1:ArkTS基础入门

1 变量和常量 1.1 变量 常见的基础数据类型&#xff1a; string 字符串、number 数字、boolean布尔 判断。 变量&#xff1a;专门用来存储数据的容器。 语法&#xff1a;let 变量名: 数据类型 值。例如&#xff1a;let name: 张三;let price:number 12.4; let isSuccess …

【triton-inference-server】 官方python_backend 文档及例子

https://github.com/triton-inference-server/python_backend#building-from-source 一。 从源码构建python_backend root@ubuntu-server:/home/ubuntu/hzh# sudo apt-get install rapidjson-dev libarchive-dev zlib1g-dev Reading package lists... Done Building dependency…

vue3中的自定义指令

全局自定义指令 假设我们要创建一个全局指令v-highlight&#xff0c;用于高亮显示元素。这个指令将接受一个颜色参数&#xff0c;并有一个可选的修饰符bold来决定是否加粗文本。 首先&#xff0c;在创建Vue应用时定义这个指令&#xff1a;&#xff08;这里可以将指令抽离成单…

昂科烧录器支持BPS晶丰明源半导体的多相Buck控制器BPD93004E

芯片烧录行业领导者-昂科技术近日发布最新的烧录软件更新及新增支持的芯片型号列表&#xff0c;其中BPS晶丰明源半导体的多相Buck控制器BPD93004E已经被昂科的通用烧录平台AP8000所支持。 BPD93004E是一款多相Buck控制器&#xff0c;支持原生1~4相&#xff0c;数字方式控制&am…

科普文:一文搞懂jvm原理(二)类加载器

概叙 科普文&#xff1a;一文搞懂jvm(一)jvm概叙-CSDN博客 前面我们介绍了jvm&#xff0c;jvm主要包括两个子系统和两个组件&#xff1a; Class loader(类装载器) 子系统&#xff0c;Execution engine(执行引擎) 子系统&#xff1b;Runtime data area (运行时数据区域)组件&am…

Cambrian-1: A Fully Open, Vision-Centric Exploration of Multimodal LLMs

摘要 https://arxiv.org/pdf/2406.16860v1 我们介绍了Cambrian-1&#xff0c;这是一系列以视觉为中心的多模态大型语言模型&#xff08;MLLMs&#xff09;。尽管更强大的语言模型可以增强多模态能力&#xff0c;但视觉组件的设计选择往往没有得到充分的探索&#xff0c;并且与…

学习笔记(linux高级编程)9

void pthread_cleanup_push(void (*routine)(void *)&#xff0c; void *arg); 功能&#xff1a;注册一个线程清理函数 参数&#xff0c;routine&#xff0c;线程清理函数的入口 arg&#xff0c;清理函数的参数。 返回值&#xff0c;无 void pthread_cleanup_pop(int execute)…

Perl语言入门指南

一、绪论 1.1 Perl语言概述 1.2 Perl的特色 1.3 Perl面临的问题 1.4 Perl语言的应用领域 二、Perl语言基础 2.1 Perl语言的历史发展 2.2 Perl语言的基本语法 2.3 Perl语言的数据类型 三、Perl语言控制结构 3.1 条件语句 3.2 循环结构 3.3 函数和子程序 四、Perl语…

OpenStack开源虚拟化平台(一)

目录 一、OpenStack背景介绍&#xff08;一&#xff09;OpenStack是什么&#xff08;二&#xff09;OpenStack的主要服务 二、计算服务Nova&#xff08;一&#xff09;Nova组件介绍&#xff08;二&#xff09;Libvirt简介&#xff08;三&#xff09;Nova中的RabbitMQ解析 OpenS…

MySQL-数据操作类型的角度理解 S锁 X锁

文章目录 1、S锁和S锁互相兼容2、S锁和X锁互斥3、X锁和X锁也互斥4、X锁和S锁也互斥5、select * from account for update;6、select * from account for update nowait;7、select * from account for update skip locked; 1、S锁和S锁互相兼容 2、S锁和X锁互斥 3、X锁和X锁也互…

20240702 每日AI必读资讯

&#x1f50d;GPTPdf&#xff1a;使用类似GPT-4o的多模态LLM分析PDF文件 - 使用类似 GPT-4o 多模态模型解析 PDF 文件&#xff0c;转换为 Markdown 格式。 - 代码简洁高效&#xff0c;仅293行。 - 解析结果几乎完美包括排版、数学公式、表格、图片、图表等内容。 &#x1…

【记录】IDEA2023的激活与安装

前言&#xff1a; 记录IDEA2023的激活与安装 第一步&#xff1a;官网下载安装包&#xff1a; 下载地址&#xff1a;https://www.jetbrains.com/idea/download/other.html 这个最好选择2023版本&#xff0c;用着很nice。 安装步骤就不详解了&#xff0c;无脑下一步就可以了…

(四十七)Vue Router之路由守卫

文章目录 概念全局路由守卫全局前置守卫全局解析守卫全局后置路由守卫 独享路由守卫组件内的守卫beforeRouteEnterbeforeRouteUpdatebeforeRouteLeave 完整的导航解析流程 上一篇&#xff1a;&#xff08;四十六&#xff09;Vue Router组件所独有的两个钩子activate、deactivat…

VLAN原理与配置

AUTHOR &#xff1a;闫小雨 DATE&#xff1a;2024-04-28 目录 VLAN的三种端口类型 VLAN原理 什么是VLAN 为什么使用VLAN VLAN的基本原理 VLAN标签 VLAN标签各字段含义如下&#xff1a; VLAN的划分方式 VLAN的划分包括如下5种方法&#xff1a; VLAN的接口链路类型 创建V…

Android system.img挂载和解除挂载

Android system.img挂载和解除挂载 解包后的super.img&#xff0c;里面最重要的是system.img文件&#xff0c;如何对system.img进行挂载和解除挂载是需要掌握的能力 基础知识 system.img、vendor.img 都存在两种格式raw,sparse &#xff0c;在ubuntu命令窗口下执行下执行&am…

深度学习之生成对抗网络 BigGAN

BigGAN(Big Generative Adversarial Networks)是生成对抗网络(GAN)的一种变体,专注于生成高质量、大尺寸的图像。BigGAN 是由 DeepMind 的研究人员于 2018 年提出的。其核心思想是通过增加模型的规模(更深的网络和更多的参数)来提高生成图像的质量,同时引入一些新的技术…