自定义按钮管理
自定义按钮允许管理员在对象页面上配置特定的业务操作,以实现数据快速更新、流程流转或系统间的数据集成。
概述
系统默认每个对象最多支持设置 20个自定义按钮。如果业务需要更多,可以通过购买“自定义按钮个数资源包”进行扩容,每个资源包包含 5 个按钮,最多可购买 5 个资源包(即最大支持扩容至 45 个)。

1. 按钮类型与配置选项
按钮类型
- 业务按钮:用于执行具体的业务逻辑操作(如后台字段变更、同步第三方系统数据等)。
- UI 按钮:用于跳转界面。可配置跳转至自定义组件、自定义页面或第三方外部页面,并在新建/编辑页中支持回填界面信息。
按钮位置
按钮位置决定了该按钮展示在前端的哪个页面:
- 详情页
- 列表页通用操作(显示在列表页右上角)
- 列表页批量操作(选中列表数据后显示在上方)
- 列表页单条操作 / 快捷按钮(显示在列表数据行右侧的操作列中)
- 相关列表页单条操作
- 新建页
- 编辑页
2. 配置自定义按钮属性
管理员进入 对象管理 > 目标对象 > 按钮管理,点击 新建按钮 进行配置:
第一步:设置显示条件
控制按钮在什么样的数据状态下展示给用户:
- 数据锁定态也显示自定义按钮:若勾选,则数据在审批中等锁定状态下依然可以点击此按钮。
CAUTION
如果自定义按钮的执行动作中包含对当前记录数据的修改操作,强烈建议不要勾选锁定态显示,以规避审批中数据被篡改的风险。
- 批量按钮显示规则:当按钮位置为“列表页批量操作”时,按钮的显示条件只在实际执行时生效。无论前台勾选的数据是否满足条件,批量按钮都会一直显示。按钮在执行后会告知执行结果,不满足条件的数据会执行失败。

第二步:配置入参(点击后需输入的内容)
支持配置对象下已有的自定义字段或新建临时字段(新字段仅在此次按钮点击弹窗中供用户输入使用)。
- 字段限制条件一:不支持以下 API Name 作为入参:
name、owner、owner_department、life_status、lock_status、out_resources、mc_currency、public_data_type。 - 字段限制条件二:不支持以下字段类型作为入参:
- 计算字段、主从关系、自增编号、统计字段、引用字段。
- 支付组件、签到组件、业务类型。
- 外部人员、外部部门。
- 协同富文本、长文本、富文本。

第三步:配置触发动作
按钮动作包含三个阶段,管理员可分别配置:
- 前验证:
- 在执行动作前运行自定义校验函数(如销售订单保存时校验库存)。校验通过则继续,校验失败则阻断。
- 限制:前验证仅支持 业务按钮,且校验在用户填写完入参之后执行。
- 执行动作:
- 字段变更:支持将自定义字段更新为变量或常量。
IMPORTANT
- 通过自定义按钮修改字段数据的过程,会直接绕过/不触发对象的验证规则。
- 按钮更新查找关联字段时,字段上的“数据范围筛选规则”不会生效。
- 字段变更若失败(如必填变为空、除数为 0、数值溢出 14 位等),系统将终止该字段更新。
- 自定义函数:一个按钮最多支持绑定 1个自定义函数。
- 字段变更:支持将自定义字段更新为变量或常量。
- 执行成功后:支持发送 CRM 消息提醒或发送邮件。

3. 设置按钮角色权限
为了控制按钮的可用范围,管理员必须为按钮设置角色权限,共有以下两种配置入口(数据互通):
方式一(按钮配置页):新建/编辑按钮时,在第六步“哪些角色可以看见并使用按钮?”中勾选授权角色。
方式二(角色权限页):在 对象 > 角色权限设置 中,选中具体角色,在按钮列表中直接勾选授权。


