魔方网表 让信息化更简单

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

查看: 152|回复: 1

[求助] 怎么设置唯一性校验?

[复制链接]
2002y 发表于 5 天前 | 显示全部楼层 |阅读模式
在表单中设置了一个“合同编号”字段,希望每个编号只能录入一次,但有些记录该字段为空,有些则有值,应该怎么设置唯一性校验?
CQW 发表于 4 天前 | 显示全部楼层
新增前判断合同编号是否存在
如果是嵌入字段的话很简单,用回写判断就行
如果是文本字段的话,就比较麻烦,需要将内容按规律拆分,然后使用JavaScript公式判断相同,如果内容没规律或没有隔断符号就比较麻烦了。
JavaScript公式类似如下:
  1. function findDuplicates(dataString) {
  2.     if (!dataString || typeof dataString !== 'string' || dataString.trim() === '') {
  3.         return '';
  4.     }

  5.     var items = dataString.split(',');
  6.     var seen = {};
  7.     var duplicates = {};
  8.     var i, item, trimmed;

  9.     for (i = 0; i < items.length; i++) {
  10.         trimmed = items[i].trim();
  11.         if (trimmed === '') continue;

  12.         if (seen[trimmed]) {
  13.             duplicates[trimmed] = (duplicates[trimmed] || 0) + 1;
  14.         } else {
  15.             seen[trimmed] = true;
  16.         }
  17.     }

  18.     var dupKeys = Object.keys(duplicates);
  19.     if (dupKeys.length === 0) return '';

  20.     var result = '共' + dupKeys.length + '组重复数据:';
  21.     for (i = 0; i < dupKeys.length; i++) {
  22.         var key = dupKeys[i];
  23.         var totalCount = duplicates[key] + 1;
  24.         result += key + '(重复' + totalCount + '次)';
  25.         if (i < dupKeys.length - 1) result += '、';
  26.     }

  27.     return result;
  28. }
  29. findDuplicates("$MF(生产报表)$")
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则


Archiver|手机版|小黑屋|魔方软件 ( 京ICP备08008787号 )

京公网安备 11010702001722号

GMT+8, 2026-7-6 23:42 , Processed in 0.075068 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表