dynamics-crm-2011 - 从 CRM 2011 在其他数据库中创建记录

标签 dynamics-crm-2011

是否有任何解决方案可以从 CRM 2011 记录在其他数据库中创建记录?当在 CRM 2011 中创建“成本”等记录时,我们希望在 Oracle DB 中创建一条记录。可以通过插件来完成吗?或者应该为此创建一个服务? 您能给我提供引用或解决方案吗? 任何帮助将不胜感激。

最佳答案

不久前,我们收到了一位客户的类似请求。他们声称 CRM 的数据库不值得信任,并希望安全地存储在 SQL Server 中创建的记录副本(猜猜看是什么)。 (是的,我们确实理解其中的讽刺意味。他们不明白。)

我们解决这个问题的方法是创建一个插件。但是,请记住,仅仅对“创建”消息使用react并不能真正做到这一点。您需要为三个 CRUD 操作设置监听器(检索不会影响外部数据库,因此它只是 C_UD 操作)。

这是主执行方法的框架。

public void Execute(IServiceProvider serviceProvider)
{
  Context = GetContextFromProvider(serviceProvider);
  Service = GetServiceFromProvider(serviceProvider);

  switch (Context.MessageName)
  {
    case "Create": ExecuteCreate(); break;
    case "Update": ExecuteUpdate(); break;
    case "Delete": ExecuteDelete(); break;
  }
}

在这个调度程序之后,您可以实现对其他数据库的实际调用。我想提醒您注意三个问题。

  1. 当 CRM 没有为您提供合适的值时,请记住向外部数据库提供合适的值。
  2. 将插件注册为异步,因为您将与外部资源通信。
  3. 考虑实体引用的问题,是否也以递归方式存储它们。

Walk-through for plugin construction
Link to CRM SDK if you haven't got that
Information on registering the plugin
除此之外,我的博客中还提供了有关该主题的演练(包括代码和结构)。它的 URL,你必须自己弄清楚 - 我不会 self 推销,但这与我的名字和 WP 有关。谷歌是你的 friend 。 :)

关于dynamics-crm-2011 - 从 CRM 2011 在其他数据库中创建记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14921085/

相关文章:

javascript - 隐藏没有div或class的JS元素

sql - 在哪里可以从 crm 2013 sql 中找到 'views' 设置

linq - 是否可以在 Dynamics CRM 中使用 LINQ 来获取不在集合中的所有帐户?

crm - ADFS (CRM 2011) - Microsoft Outlook Client for CRM 中的身份验证问题(Response.Redirect(...) & Window.Open(...))

dynamics-crm-2011 - 在 CRM 2011 中自定义转换为商机对话框

c# - 从 CRM 插件订阅 Azure 服务总线主题

sharepoint-2010 - 使用 CRM SDK 中的文档管理的 CRM 2011 和 SharePoint

javascript - CRM 2011 - 使用 JavaScript 保存时进行重复检测

c# - 从 Dynamics CRM 4 和 2011 中的列表中排除成员

dynamics-crm-2011 - 如何使用 JavaScript 在 CRM 2011 中获取安全角色?