通常,必须添加业务逻辑,以确保模型驱动应用中的列显示、隐藏或设置正确的值。
本文介绍如何创建 业务规则 和建议,以在模型驱动应用中应用表单逻辑,而无需编写 JavaScript 代码或创建插件。业务规则提供了一个简单的界面,用于实现和维护快速变化且常用的规则。 它们可应用于主表单和快速创建表单。 业务规则适用于模型驱动应用、旧版 Web 应用、适用于平板电脑的 Dynamics 365 和适用于 Outlook 的 Dynamics 365(联机或脱机模式)。
通过结合条件和动作,业务规则可以实现以下动作:
设置列值
清除列值
设置列要求级别
显示或隐藏列
启用或禁用列
验证数据并显示错误消息
根据业务智能创建业务建议。
在 Power Apps 中查看、编辑或创建业务规则
- 登录到 Power Apps。
- 在左侧导航窗格中选择 “解决方案 ”,打开所需的解决方案,然后打开或添加所需的表。
- 选择“ 新建”,然后在“ 自定义”下选择 “业务规则”。 如果项目不在侧面板窗格中,请选择 …更多,然后选择所需项目。
此时会打开业务规则设计器。 下一步: 设置业务规则属性
在窗体设计器中查看、编辑或创建业务规则
在窗体设计器左侧导航窗格中,选择 “业务规则”。
从以下选项中进行选择:
- 默认情况下,仅显示窗体的可用业务规则。 清除仅显示可用的业务规则查看窗体的已停用业务规则。
- 若要创建业务规则,请选择“ 新建业务规则”。
- 选择业务规则以查看属性并编辑业务规则。
设置业务规则属性
为新规则打开业务规则设计器窗口时,已创建单个条件。 每个规则都从条件开始。 业务规则根据该条件执行一个或多个操作。
在业务规则命令栏中输入或选择以下属性。
业务规则名称:默认情况下,规则名为 “新建业务规则”。 建议为业务规则输入有意义的名称。
说明:(可选)添加说明。
作用域:业务规则的作用域决定其适用表单范围。 根据以下选项设置范围:
如果选择此项...
范围将设置为...
实体
该表及其相关的所有表单
所有窗体
表的所有窗体
特定窗体(例如帐户 主窗体)
仅该窗体
注释
若要修改现有业务规则,必须先停用它,然后才能对其进行修改。
生成业务规则
添加条件。 若要向业务规则添加更多条件:
将条件组件从组件选项卡拖到设计器中的加号。
若要设置条件的属性,请在设计器窗口中选择 “条件 ”组件,然后在屏幕右侧的“ 属性 ”选项卡中设置属性。 设置属性时,会在 “属性 ”选项卡底部创建表达式。
若要向条件添加附加子句(AND 或 OR),请在“属性”选项卡中选择“新建”以创建新规则,然后设置该规则的属性。 在 “规则逻辑 ”列中,可以指定是将新规则添加为 AND 还是 OR。
完成条件设置属性后,选择“ 应用”。
添加操作。 若要添加操作:
将一个操作组件从组件选项卡拖到条件组件旁边的加号。 如果希望业务规则在满足条件时执行某个动作,请将该动作拖动到复选标记旁的加号。如果希望业务规则在不满足条件时执行某个动作,请将该动作拖动到 x 符号旁的加号。
若要设置作的属性,请在设计器窗口中选择 “作 ”组件,然后在“ 属性 ”选项卡中设置属性。
完成设置属性后,选择“ 应用”。
添加业务建议。 若要添加业务建议:
将建议组件从组件选项卡拖到条件组件旁边的加号。 如果希望业务规则在满足条件时执行该作,请将 建议 组件拖到复选标记旁的加号;如果希望业务规则在未满足条件时采取该作,则拖动到 x 旁边的加号。
若要设置建议的属性,请在设计器窗口中选择 “建议 ”组件,然后在“ 属性 ”选项卡中设置属性。
若要向建议添加更多操作,请从组件选项卡拖动,然后在属性选项卡中为每个操作设置属性。
注释
创建建议时,默认添加单个操作。 要查看建议中的所有操作,请在建议组件中选择详细信息。
完成设置属性后,选择“ 应用”。
若要验证业务规则,请选择作栏上的 “验证 ”。
若要保存业务规则,请选择作栏上的 “保存 ”。
若要激活业务规则,请在“解决方案资源管理器”窗口中将其选中,然后选择“ 激活”。 无法从设计器窗口激活业务规则。
小窍门
在设计器窗口中处理业务规则时,请记住下面的一些技巧:
- 若要在 “业务规则 ”窗口中拍摄所有内容的快照,请在作栏上选择 “快照 ”。 例如,从团队成员那里获取反馈时,这非常有用。
- 使用迷你地图快速导航到流程的其他部分。 处理复杂且从屏幕上消失的过程时,这非常有用。
- 向业务规则添加条件、作和业务建议时,将生成业务规则的代码,并显示在设计器窗口底部。 此代码是只读的。
本地化业务规则中使用的错误消息
如果您的环境配置了多种语言,那么值得对设定的任何错误消息进行本地化。 每次设置消息时,系统都会生成标签。 如果设置了环境中的翻译,则可以添加消息的本地化版本,然后将其导入回系统。 这使使用基础语言以外的语言的人可以查看翻译的消息。
常见问题
本部分介绍使用业务规则时可能出现的常见问题。
统一界面应用程序不支持全名字段和地址字段
基于统一接口的应用不支持使用复合列(如 全名fullname 列或 地址 列)的作或条件。 或者,您可以对组成列使用操作或条件。 例如,对于“全名”列,可以在名字(firstname)和姓氏(lastname)列上使用操作或条件。
业务规则不会对某些用户执行
确保用户具有至少包括流程表的用户范围读取特权的安全角色。 默认情况下,基本用户安全角色具有此权限。
业务规则没有在仪表板上的可编辑网格中触发
实体作用域的业务规则不会在仪表板页面配置的可编辑网格中触发。
窗体的业务规则是否未触发?
业务规则可能不会执行,因为业务规则中引用的列不包含在窗体中。
打开解决方案资源管理器。 展开所需表,然后选择窗体。
打开窗体,然后在窗体设计器功能区上选择 “业务规则”。
在窗体设计器中,打开业务规则。
在业务规则设计器中,选择每个条件和作以验证每个条件和作中引用的所有列。
验证业务规则中引用的每一列是否也包含在表单上。 如果没有,则将缺少的列添加到表单中。
业务规则也可能不执行,因为业务规则中引用的列是复合列。 可以使用复合列的构成列作为替代。
不支持的列类型
业务规则不支持唯一标识符类型列和汇总列。
有几个特殊列支持可本地化的值,例如“产品”表的“名称”列,这些列包含在 Dynamics 365 for Sales 应用中。 业务规则不支持包含可本地化值的列。
常见问题 (FAQ)
业务规则是否可以解锁只读窗体上的列?
- 是的,业务规则可以解锁列,并在只读窗体上进行编辑操作。
如何排查不工作的业务规则的问题?
- 请参阅本文中的您的业务规则是否不响应窗体?。
建议在表单中是什么样子?
建议项会在列标签旁显示灯泡图标。
选择灯泡以展开视图并显示建议。