编写业务流程脚本
发布日期: 2016年11月
适用于: Dynamics CRM 2015
Microsoft Dynamics CRM 2015 和 Microsoft Dynamics CRM Online 2015 更新 可以使您能够使用客户端对象与您脚本中的业务流程进行交互。 扩展 Xrm.Page.data 命名空间,以根据 Xrm.Page.data.process 包含方法。 扩展 Xrm.Page.ui 命名空间,以根据 Xrm.Page.ui.process 包含方法。
在本主题中
业务流程结构。
采用自动化的操作
业务流程事件
业务流程结构。
业务流程包含一系列阶段,每个阶段包含大量步骤。 只有一阶段为活动阶段。 当完成每个阶段中的必要步骤时,流程可以移动到下一阶段,并变为活动阶段。 可以根据业务流程中的条件定义下一步为哪个阶段,如以下关系图所示。
阶段可以与特定相关实体关联,因此业务流程可以跨多个实体。 流程业务保持相同,并会引导用户获得所需结论。详细信息:TechNet: 业务流程
采用自动化的操作
通常,沿业务流程的进程取决于用户输入。 作为开发人员,您可以在窗体脚本以编程方式执行相同操作。
当有多个流程可用于实体时,更改此流程。
使用 Xrm.Page.data.process. getEnabledProcesses 检索用户可以为实体选择的启用流程相关信息。 然后,使用 Xrm.Page.data.process. setActiveProcess 以使其中一个已启用流程变为活动流程。当完成所有必要步骤时,移动到下一阶段以使其变为当前活动阶段。
使用Xrm.Page.data.process. moveNext。移至上一阶段并使其为当前活动阶段。
使用Xrm.Page.data.process. movePrevious。选择某个阶段,以显示该阶段中步骤的状态。
使用 Xrm.Page.data.process. getActivePath 检索已完成阶段、当前活动阶段和当前活动阶段中有效阶段的相关信息。 检查阶段中包含的步骤,并比较相应的窗体属性值,以确定是否完成。完成一个步骤
当在窗体中输入相应的数据后,完成步骤。 您可以通过使用步骤 getAttribute 方法来确定属性。 这将返回属性的逻辑名称。 使用 Xrm.Page.getAttribute 从 Xrm.Page.data.entity.attributes 集合检索属性,然后使用属性 setValue 方法设置值。检测是否需要此步骤
使用步骤 isRequired 方法确定是否为业务流程的必需步骤。展开或折叠业务流程控件
使用Xrm.Page.ui.process.setDisplayState。
开发人员还可以执行一些用户无法执行的操作。
隐藏流程控件
使用 Xrm.Page.ui.process. 1468bab0-f6b3-4320-a60c-a88c9d4fcf1f#BKMK_setVisible,您可以控制是否显示业务流程控件。跳过有效的已完成阶段。
使用 Xrm.Page.data.process.setActiveStage 设置当前实体的有效已完成阶段之一。查询包括阶段的流程定义当前不可见
使用 Xrm.Page.data.process.getActiveProcess 查询业务流程的定义,包括由于流程中的分支逻辑而可能不可见的阶段。
业务流程事件
您可以使用业务流程与窗体提供的所有事件交互,但是,两个新事件仅允许您针对业务流程控件执行基于事件的代码。 当更改业务流程的活动阶段时 (OnStageChange 事件),或选定某个阶段时 (OnStageSelected 事件),您可以执行代码。
两新事件均不提供用户界面来注册您的事件处理程序。 在窗体 OnLoad 事件中,您必须使用提供的方法添加或删除这些事件的处理程序。详细信息:业务流程控件事件
另请参阅
使用 Xrm.Page 对象模型
Xrm.Page.data.process(客户端引用)
示例:Xrm.Page.data.process.getEnabledProcesses
Sample: Xrm.Page.data.process.getActivePath
业务流程控件事件
TechNet:业务流程
© 2017 Microsoft。 保留所有权利。 版权