You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Salesforce中为IMEI字段配置验证规则?

Salesforce IMEI字段验证规则实现方案

要实现IMEI的格式校验和校验位验证,可通过**验证规则+Luhn算法(模10算法)**完成,以下是具体步骤和公式:

验证规则核心逻辑

IMEI需满足两个条件:

  • 格式为15位纯数字
  • 第15位校验位与前14位通过Luhn算法计算出的结果一致

错误条件公式(替换IMEI__c为你的字段API名称)

NOT(
  AND(
    # 允许空值,若需强制填写可移除ISBLANK判断
    ISBLANK(IMEI__c) || (LEN(IMEI__c) = 15 && ISNUMBER(IMEI__c)),
    ISBLANK(IMEI__c) || (VALUE(RIGHT(IMEI__c,1)) = IF(MOD(SUM(
      VALUE(MID(LEFT(IMEI__c,14),1,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),2,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),2,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),2,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),3,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),4,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),4,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),4,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),5,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),6,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),6,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),6,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),7,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),8,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),8,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),8,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),9,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),10,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),10,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),10,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),11,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),12,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),12,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),12,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),13,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),14,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),14,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),14,1))*2)
    ),10)=0, 0, 10-MOD(SUM(
      VALUE(MID(LEFT(IMEI__c,14),1,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),2,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),2,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),2,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),3,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),4,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),4,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),4,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),5,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),6,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),6,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),6,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),7,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),8,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),8,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),8,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),9,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),10,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),10,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),10,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),11,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),12,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),12,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),12,1))*2),
      VALUE(MID(LEFT(IMEI__c,14),13,1)),
      IF(VALUE(MID(LEFT(IMEI__c,14),14,1))*2 >9, VALUE(MID(LEFT(IMEI__c,14),14,1))*2 -9, VALUE(MID(LEFT(IMEI__c,14),14,1))*2)
    ),10)))
  )
)

错误提示信息

建议设置为:输入的IMEI格式无效或校验位错误,请检查后重新输入。

配置步骤

  1. 进入Salesforce Setup,找到目标对象的「验证规则」页面
  2. 点击「新建验证规则」,填写规则名称(如IMEI格式与校验位验证)
  3. 将上述公式粘贴到「错误条件公式」区域,替换字段API名称
  4. 设置错误提示信息和错误显示位置(建议选择字段本身)
  5. 保存规则即可生效

内容的提问来源于stack exchange,提问作者HeXor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 21:54:51