首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Dynamics 365编程完成业务流程流程

用Dynamics 365编程完成业务流程流程
EN

Stack Overflow用户
提问于 2017-04-11 12:40:50
回答 2查看 4.3K关注 0票数 3

我使用最新的SDK版本(8.2)管理C#代码中的整个客户关系管理流程。向前推进很好,只需更新相关实体上的stageid即可。然而,我不知道,我如何才能完成最后的阶段=我如何设置过程完成。我想调用与单击“设置完成”按钮完全相同的操作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-11 13:28:48

若要将活动流程实例的当前状态设置为已完成使用,请执行以下操作:

代码语言:javascript
复制
Xrm.Page.data.process.setStatus("finished");

来自Microsoft文档

代码语言:javascript
复制
Xrm.Page.data.process.setStatus(status, callbackFunction);

status是一个字符串,可以是activeabandonedfinishcallbackFunction是操作完成后要调用的可选函数。

注意:,尽管文档中说要使用finish,这是行不通的:使用finished

票数 2
EN

Stack Overflow用户

发布于 2017-04-11 15:15:44

当您创建业务流程流时,您将创建一个自定义实体。例如,如果您在默认解决方案中创建了一个名为“营销管理”的业务流程流,那么您将创建一个名为new_marketingmanagement的实体。

当您在记录上激活业务流程流时,将创建该实体的实例。实例包含诸如进程处于哪个阶段以及进程何时启动等信息。

可以使用Microsoft.Xrm.Sdk.Messages.SetStateRequest禁用实例。

代码语言:javascript
复制
var stateRequest = new SetStateRequest 
{
    EntityMoniker = new EntityReference(processFlowName, processId),
    State = new OptionSetValue(1), // Inactive.
    Status = new OptionSetValue(2) // Finished.
};
service.Execute(stateRequest);

其中,processFlowName是作为字符串的业务流程流的逻辑名称,而processId是希望作为GUID停用的流程流实例的ID。

要找到流程流实例的ID,可以查询属性_bpf_<primary_key>_value,其中<primary_key>应该替换为进程所在实体的主键。例如,在帐户实体上,它将读取_bpf_accountid_value

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43346218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档