以销售易 CRM 为基础,向广大销售易 CRM 用户提供校验规则的使用方法和注意事项。提高系统的使用度,助力广大用户摆脱繁琐的校验逻辑代码,提高工作效率并优化用户体验。

数据进入 CRM 系统,是一个比较严谨的过程。
正常情况下,公司的业务场景往往是需要用户在操作时核对数据的精准性,只有数据准确了,才可以创建数据。但是,由于数据字段较多或业务较复杂,导致数据核对不准确而使得错误数据进入系统,造成业务数据错误。后续要投入人力进行人工核查、修复,影响公司业务进度,造成人力、时间等资源浪费。

 

一、不同公司对数据的校验方式

一般公司,直接强制要求用户再三核对数据后再录入系统,导致一条数据录入需要数分钟,整体耗
时长。
懂得使用 PaaS 开发的公司,会在数据进入 CRM 系统后做一系列的代码逻辑校验。但是这种方式局限性太强,首先是需要公司有开发人员,然后需要付费开通相关的 PaaS 平台的功能。且最后形成的代码不利于后期维护(涉及到的实体的字段、规则的改变都需要调整代码,维护起来相对较复杂),人力成本和维护成本较高。
能合理使用校验规则的公司,可以通过校验规则有效的保证数据的精准性,同时后期维护也相对方便。大多数规则都可以通过校验规则来进行限制,能够提升工作效率、减少人力成本。

二、带你认识校验规则

首先,大家需要明确一点,校验规则只能控制数据的创建或修改的动作,并不能在实际意义上更改数据的内容。
校验规则是销售易 CRM 核验数据精准性的一项标准功能。它获取数据上相关的字段信息做逻辑判断,如果满足校验条件,则向用户做信息提示并阻止数据的创建或修改。如果不满足校验条件,数据才会正常创建、修改进入到销售易 CRM 中。
使用校验规则需要注意以下事项:

※ 使用校验规则的前提条件:在保证校验规则的合理性的前提下,了解并掌握好计算公式的使用和注意事项。具体公式的内容,可以参考销售 易 CRM 系 统 后 台 插入公式时的公式介绍。
※ 创建和修改数据的时候可以触发校验规则,其中转移数据可以理解为修改了数据的所有人和所属部门。目前,删除数据,暂不支持校验规则。如果对删除数据做校验,需 要 结 合 PaaS 平 台 业 务 逻辑代码进行适当的后台开发。
※ 校验规则实际上是一个逻辑表 达 式, 返 回 值 为 True 或False。当逻辑表达式中的条件 为 True 时, 校 验 规 则 才会生效,来阻止数据的创建或修改。当逻辑表达式中的条 件 检 验 后 为 False 时, 校验规则失效。

三、如何在实体中创建校验规则

销售易 CRM 中各实体是支持校验规则的,校验规则的创建步骤如下:
后台选择对应实体→选择校验规则→点击新建校验规则按钮→填写校验规则名称→编写校验规则条件→检测条件是否正确→规则提示→保存校验规则。

TIPS:

在创建校验规则 — 插入字段时,插入的那一长串“鬼画符”是什么?校验规则必须配合
实体中的字段来使用。插入的字段如果是一长串的英文字符,用英文的句号隔开。例如:
• account.accountName —— (1)
• account.createdBy.user.dimDepart.department.departName —— (2)
(1) 表示客户数据中的客户名称。
(2) 表示客户数据创建人所在的部门名称。
所以,根据 (1) 和 (2) 能够发现,字段的格式为:实体 API 名称 . 与字段 API 名称。如果是 A.a格式,表明 a 是实体 A 的非关联关系的字段。如果是 A.a.B.b 则表示主实体是 A,a 是主实体A 的关联字段。而 A 通过 a 字段关联的实体是 B。B.b 则表示 B 实体下的非关联字段 b。
当数据被校验规则校验,导致无法创建或更新时,需要管理员查看校验规则的规则是如何判断的。但校验规则中往往会插入大量字段,这些字段可能是本实体字段,也可能是关联实体的字段。因此判断字段是哪个实体的,会变得很棘手。这个时候,API 名称给了管理员一个很好的指示方向。该如何查看字段的 API 名称?
可以通过实体字段设置中的字段列表查看:

 

新版本销售易后台管理界面,可以在标准对象和自定义对象中,通过【API 名称】获取对象的 API 名称。

根据图 1 和图 2,可以看出 account.Address 表示的是客户数据中的详细地址。所以,当我们认清这些字符所代表的意义,就很容易确认该校验规则中涉及到的字段,也方便后续我们修改校验逻辑。

四、校验规则的场景及应用

业务场景 1
用户创建或修改客户数据时,要求客户资料中的地址字段长度不得少于 20 个字符。
需 求 分 析: 首 先, 客 户 地 址 的 API 名 称 为:address,该字段属于文本类型,可以通过判断输入的文本值字符的多少来进行校验,判断字符的多少需要介入文本函数来处理。此场景可以使用 LEN( 文本字段 )来进行判断,这个函数会统计文本字段中字符的个数。
校验条件:LEN(account.address)<20
配置如图:

业务场景 2
审批通过的客户,除了管理员外,其余人不允许修改客户名称。
需求分析:注意以下几个条件:1、客户的审批状态为:审批通过。2、当前操作的用户为:管理员。3、操作:改变客户名称。只有满足这 3 个条件,才允许修改客户信息。判断字段是否被修改,可以使用ISCHANGED() 函数,当前用户可以使用插入字段中的【当前客户】。审批状态实际上是一个类似于单选字段的字段,但是由于系统隐藏,可以通过插入字段来进行直接插入,当审批状态 =’ 审批通过 ‘ 才是审批通过的数据。
校验条件:
account.approvalStatus=’ 审 批 通过 ‘&&ISCHANGED(account.accountName)&&$CurrentUser.$User.Name<>’ 管 理 员 ‘ 或 AND(account.approvalStatus=’ 审 批 通 过 ‘,ISCHANGED(account.accountName),$CurrentUser.$User.Name<>’ 管理员 ‘)
配置如图:

业务场景 3
不允许用户转移数据。需求分析:用户转移数据,实际上是数据的所有人的名称发生改变,。因此只需要判断所有人是否发生改变即可。

校 验 条 件:ISCHANGED(account.ownerId.user.name)
配置如图:

 

好啦,关于校验规则的使用逻辑你掌握了吗?
现在,就来检验一下你的理解力吧!(答案见 P57)

判断题:
1、校验规则,只允许在创建数据的时候才能生效。()
2、可以通过判断当前用户,来执行删除数据。()
3、可以通过配置校验规则,来展示提示语的显示位置()
4、不能通过关联的数据来设置校验规则()
5、校验条件最终的值是布尔类型的值,即:true false()
选择题:
1、客户所有人姓名可以用()来表示
A:$CurrentUser.$User.Name B:account.parentAccountId.account.ownerId.user.name
C:account.recentActivityCreatedBy.user.name D:account.ownerId.user.name