注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

微软MVP罗勇的博客

微软MVP罗勇,www.luoyong.me

 
 
 

日志

 
 

Dynamics CRM教程:复制工作流,解决字符串太多复制截断问题  

2015-02-11 08:37:17|  分类: CRM流程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        关注本人微信和易信公众号: 微软动态CRM专家罗勇,回复142或者20150211可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me!
        前些日子一个功能用到了复制现有工作流的功能,如何用代码创建一个工作流,SDK的 Sample: Create a workflow in code 章节有示例,但是是前绑定代码,我这里改成后绑定代码如下:

var workflowEntity = new Entity("workflow");
workflowEntity["name"] = entityDisplay + " Approval Workflow";
workflowEntity["type"] = new OptionSetValue(1);//definition
workflowEntity["category"] = new OptionSetValue(0);//workflow
workflowEntity["primaryentity"] = entityName;
workflowEntity["mode"] = new OptionSetValue(0);//run in background
workflowEntity["description"] = entityDisplay + " Approval Workflow";
workflowEntity["ondemand"] = true;
workflowEntity["subprocess"] = false;
workflowEntity["scope"] = new OptionSetValue(4);//organization
workflowEntity["triggeroncreate"] = false;
workflowEntity["triggerondelete"] = false;
workflowEntity["asyncautodelete"] = false;
workflowEntity["xaml"] = xamlstring;
workflowEntity["languagecode"] = 1033;
var newWorkflowId = service.Create(workflowEntity);
var activateRequest = new SetStateRequest
{
EntityMoniker = new EntityReference("workflow", newWorkflowId),
State = new OptionSetValue(1),
Status = new OptionSetValue(2)
};
service.Execute(activateRequest);

然后就碰到一个问题,一个工作流的XAML字符串自己手写肯定不现实,可以通过工具生成,我目前用的是最常想到的,用工作流的配置界面生成一个工作流,到数据库中将这个工作流的XAML内容复制出来。当然在代码中复制没有问题,我想的是拿出来看看是什么样子。可是因为这个工作流稍微复杂点,它的XAML内容太多了,用类似如下的SQL语句在SQL Server Management 中执行:

select xaml from workflow where name='潜在顾客转化为商机销售流程'


复制这个字段出来,发现复制字段的值不完全。发现检索一个非XML字段提取出来的最多字符是 65535,而且自己没有办法改的更大,从选项中可以看到:
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客

后来我找到的办法就是使用数据库的导出功能,类似如下:
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客

下面的地方注意,需要选中 Unicode 。
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客
 
 这里我选择下面那个选项: 编写查询以制定要传输的数据。
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客
 
 编写的查询如下:
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客

到这个步骤的时候选择下 编辑映射
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客

 我这里设置的映射如下:
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客
 
 然后可以看到导出成功了。
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客
 
 我的建议是将这些xaml保存成一个xml类型的web资源,用来复制工作流,这样的好处大家想把。

  素格格新疆特产店--做最好新疆特产的搬运工。 
本店由博主的新疆老婆开设,搬运各种最好的新疆特产,是自用,送礼,年货,孝敬长辈特别是(岳)父母的首选!
Dynamics CRM教程:复制工作流,解决字符串太多复制不完全问题 - 罗勇 - 罗勇的博客
 
 
  评论这张
 
阅读(399)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018