码迷,mamicode.com
首页 > 其他好文 > 详细

Dynamics 365-关于BPF的进一步探究

时间:2018-11-09 14:20:42      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:tac   方法   pre   eid   step   article   res   需要   关于   

  关于BPF是什么,以及如何在CRM中配置BPF,可以参阅熊宸大神的博客Dynamics 365 Business Process Flow -- 让你不再惧怕复杂的业务流程!

  1. CRM中发生了什么

  在你成功构造了一个BPF之后,只有执行Activate操作才会真正生效,而在Activate的过程中,CRM系统会自动地在环境中新建一个此BPF相关的Entity。

技术分享图片

 

技术分享图片

  而Entity的logical name就是你新建BPF的时候填写的Name

技术分享图片

  上面的coco test是BPF关联的Entity,每一条coco test记录都会有一个ByronDemo BPF记录生成

 

 技术分享图片

  

  2. 获取关于BPF的详细信息

  写关于BPF相关的定制,或多或少都要涉及到stage的操作,那么首先需要知道的,就是这个BPF有哪些Stage,Id又是多少。

  BPF其实是一条Process记录,那么跟获取其它Entity的记录的类似,直接Retrieve

1   Entity processRecord = crmProxy.Retrieve("workflow", 
2                     new Guid("1310e211-ee01-4a93-92cd-ccd87689c82a"), 
3                     new ColumnSet(true));

  返回的Entity对象,可以从两个字段获取Stage信息以及Step信息,一个是xaml,一个是clientdata。

技术分享图片

  一个是xml结构对象,一个是json结构对象。这里把json对象展开来看看,我例子中是两个stage,但是系统会默认多一个,也就是说,第一个stage并非我业务相关的。

  技术分享图片

  那么这个stageId有什么用呢?CRM提供的API,如果涉及到具体的stage操作,参数就需要这个Id。比如下面这个API:

formContext.data.process.setActiveStage(stageId, callbackFunction);

  当我们需要前台定制更新某条记录的BPF Stage的时候,要注意BPF的更新是个异步方法,在API的CallBackup方法里,不要忘记加上refresh操作。

 

  

Dynamics 365-关于BPF的进一步探究

标签:tac   方法   pre   eid   step   article   res   需要   关于   

原文地址:https://www.cnblogs.com/yobyron/p/9930413.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!