Dynamics crm Dynamics CRM-外部Web应用程序中的页面

Dynamics crm Dynamics CRM-外部Web应用程序中的页面,dynamics-crm,crm,microsoft-dynamics,Dynamics Crm,Crm,Microsoft Dynamics,我有一个完全可定制的电子商务后端,在那里我可以看到我客户的利润和销售额。我希望在电话号码或电子邮件地址下集成一个链接,以便在Dynamics CRM上打开相应的联系人页面。我做了一些研究,我看到了一些URI模式,可能正在做这项工作,但是每个实体都有自己的实体ID(GUID)。如何获取与电话号码(或电子邮件)匹配的实体的GUID,以便打开联系人页面并在其中显示联系人?通过动态SOAP Web服务? 任何建议都将不胜感激 使用web api端点过滤记录。例如,对于您的客户(客户/联系人): 主键总是

我有一个完全可定制的电子商务后端,在那里我可以看到我客户的利润和销售额。我希望在电话号码或电子邮件地址下集成一个链接,以便在Dynamics CRM上打开相应的联系人页面。我做了一些研究,我看到了一些URI模式,可能正在做这项工作,但是每个实体都有自己的实体ID(GUID)。如何获取与电话号码(或电子邮件)匹配的实体的GUID,以便打开联系人页面并在其中显示联系人?通过动态SOAP Web服务?
任何建议都将不胜感激

使用web api端点过滤记录。例如,对于您的客户(客户/联系人):

主键总是
entityname
+
id
(因此,如果实体名为foo\u bar,则实体主键(id)将是
foo\u barid

结果:

{
  "@odata.context":"http://consoto.com/myorganization/api/data/v8.0/$metadata#accounts(accountid)","value":[
    {
      "@odata.etag":"W/\"137091357\"","accountid":"12345678-abf1-e511-80d5-00155d3af123"
    }
  ]
}
然后,您可以构建一个URL,帮助用户导航到记录:

http://consoto.com/myorganization/main.aspx?etn=account&pagetype=entityrecord&id=12345678-abf1-e511-80d5-00155d3af159

要使用SOAP端点,请使用库,如或。由于SOAP端点上的CRM路线图非常清晰(不久的将来会贬值),web api至少应该是未来的默认选项。

首先,您的电子商务解决方案使用哪种编程语言。这决定了你的下一步行动。或者更确切地说,可以选择CRM访问库

基本上,如果您的后端是用C#编写的,您不会有任何问题,因为该语言的SDK马上就可以使用。不过,其余的语言更棘手,我相信无论如何都有可能找到所需的库

接下来,后端应该查询CRM以获取记录所需的GUID。下面是一个示例FetchXML查询,用于通过
mobilephone
number搜索
contact

<fetch>
  <entity name="contact" >
    <attribute name="contactid" />
    <filter>
      <condition attribute="mobilephone" operator="eq" value="555-555-555" />
    </filter>
  </entity>
</fetch>

结果GUID将在结果的
contactid
字段中找到。通过此GUID,您可以打开所需的记录

不过,如果您已经定制了电子商务解决方案,那么从CRM获取所有需要的信息并将其显示在您自己的界面中可能更有意义


这有时可能是有益的,因为将用户重定向到CRM可能需要传递授权过程。这可能会减慢您的速度。

谢谢您的回答!但是WebApi只能从Dynamics 2016获得,对吗?对于JS库,可以在另一个web应用程序中使用这些库,或者我必须将它们集成到web资源中?
<fetch>
  <entity name="contact" >
    <attribute name="contactid" />
    <filter>
      <condition attribute="mobilephone" operator="eq" value="555-555-555" />
    </filter>
  </entity>
</fetch>