【问题标题】:integrating third party application with Dynamics CRM将第三方应用程序与 Dynamics CRM 集成
【发布时间】:2018-12-26 14:16:09
【问题描述】:

我正在尝试将第三方应用程序与动态 CRM 集成。

验证 Dynamics 用户 > 将所有用户数据导入第三方应用程序是我的目标。

但我无法找到正确的方法来执行此操作。我浏览了开发人员文档,但没有找到解决方案。谁能帮我解决这个问题?

【问题讨论】:

  • 有很多方法可以做到这一点,从自定义编码到使用 ETL 工具,如带有 KingswaySoft 或 Scribe Online 的 SSIS。如果您正在考虑自定义编码,您正在考虑使用什么语言?
  • 另外,请查看How to Ask
  • 谢谢。我的计划是使用 Dynamics CRM Web API。目前,我正在使用 Java 语言。以前我使用 Azure 做了一个 OAUTH2 流。我在应用程序注册门户apps.dev.microsoft.com/… 中注册了我的应用程序,并且还配置了 Azure。现在,我的问题是如何获取动态用户数据?(问题是我为 azure 做了 oauth2 流)

标签: dynamics-crm


【解决方案1】:

感谢您的澄清。您可以从 Settings > Customization > Developer Resources > Instance Web API 获取 Web API URL。

类似于:
https://myOrg.api.crm.dynamics.com/api/data/v9.1/

使用该 URL,您可以查询系统并获取 JSON 结果。

转到根 URL 将为您提供系统中所有实体的集合名称(又名 EntitySetName)(对于用户来说是 systemusers)。

通常EntitySetName 将是实体的复数形式(即只需添加“s”),但有一些奇怪的规则来制作复数形式,因此最好通过 API 或 @ 之类的工具来确认实体集名称987654321@元数据浏览器。

用户最基本的查询是:
https://myOrg.api.crm.dynamics.com/api/data/v9.1/systemusers

它将返回所有用户的所有字段。

获取一组字段:
https://myOrg.api.crm.dynamics.com/api/data/v9.1/systemusers?$select=salutation,fullname,jobtitle,createdon,internalemailaddress

添加几个过滤器:
https://myOrg.api.crm.dynamics.com/api/data/v9.1/systemusers?$select=salutation,fullname,jobtitle,createdon,internalemailaddress&$filter=isdisabled%20eq%20false%20and%20address1_line1%20ne%20null

当然,您必须使用 Java 的 XmlHttpRequest 来执行此操作。查询数据时可以使用HTTP GET

要快速测试上述查询,您只需登录 D365 网络客户端,然后将查询粘贴到浏览器的地址栏中。

您可能还想查看 Jason Lattimer 的 CRMRESTBuilder。虽然它不构建 Java,但它为您提供了创建 JavaScript XmlHttpRequests 的 UI,然后您可以将其转换为 Java。

这里有一些关于查询 Web API 的 Microsoft documentation

【讨论】:

  • 谢谢 :) 我会试试这个信息。
  • 嗨 Aron,我在apps.dev.microsoft.com 注册了我的应用程序并成功建立了 OAUTH 连接,它正在生成 access_tokens。但是当我使用这个令牌从动态组织获取数据时,我得到了 401 - 未经授权的错误。你能帮我解决这个问题吗? (仅使用我的组织凭据登录)
  • This 可能会有所帮助...
  • 我按照上面的博客,我得到资源参数未找到错误。 (我使用的是oAUTH2.0)
猜你喜欢
  • 1970-01-01
  • 2012-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-14
  • 1970-01-01
相关资源
最近更新 更多