2015-08-08 132 views
0

我的程序将创建100到200个新联系人,并将1,000到2,000个现有联系人作为日常批处理作业的一部分。我们正在使用Infusion Soft的Dynamics CRM,我们使用addWithDupCheck方法,根据匹配的字段值添加或更新联系人记录。我知道我可以查询联系人的存在,然后使用创建或更新,但是,我正在寻找一个与ExecuteMultipleRequest一起使用的解决方案。创建和更新Dynamics CRM联系人

回答

1

如果您使用的是2013,则不会有UPSERT请求的选项,就像您在Online 2015 Update 1中不幸的那样。

+0

我使用的是Online 2015 Update 1;我在创建问题时选择了错误的TAG。 UpsertRequest是我正在寻找的。 – ddrjca

+0

是否有更新的CRM SDK下载7.1二进制文件或是NuGet获取更新的唯一方法? – ddrjca

+0

以下是CRM 2015 SDK发行历史记录的链接:https://msdn.microsoft.com/en-us/library/dn481567.aspx – Alessi

0

ExecuteMultipleRequest只会带来较小的性能收益。这是因为它包含的请求由服务器在单个线程上按顺序处理。您唯一的收获是减少服务器的往返次数。

对于CRM 2013(版本6)您可以考虑在处理要创建或更新的记录之前从CRM中检索现有联系人记录的列表。查询来自CRM的少于5000条记录不应该是一个昂贵或耗时的操作。

对于CRM 2015更新1(版本7.1)添加了一个新的有用选项,称为UpsertRequest。此请求可用于更新现有记录或创建一个新的记录,如果它尚不存在。 UpsertRequest使用备用密钥(这些密钥是可配置的),在您的方案中这将是源系统中联系人记录的主键。您可以在MSDN上找到关于此主题的更多信息。

相关问题