如何将UI上的MS Dynamics CRM ID转换为API能够理解的ID(GUID)

如何将UI上的MS Dynamics CRM ID转换为API能够理解的ID(GUID),api,rest,dynamics-crm,dynamics-crm-online,Api,Rest,Dynamics Crm,Dynamics Crm Online,如何将MS Dynamics CRM ID“在UI上”转换为API能够理解的ID(GUID)?或者-如何通过具有CRM UI ID的API获取给定的CRM实体 UI上的ID示例: API可理解的ID示例(GUID): 53d9f073-9418-4d59-9c7f-2f2b43e86051 所以我认为有一些转换正在进行,尽管我不知道是哪一个?我还知道有“顺序guid”(用于提高性能),但这对“转换”问题没有多大帮助 当然还有另一种选择,CRM UI隐藏了真实的实体ID,但这仍然很奇怪,因为我在

如何将MS Dynamics CRM ID“在UI上”转换为API能够理解的ID(GUID)?或者-如何通过具有CRM UI ID的API获取给定的CRM实体

UI上的ID示例:

API可理解的ID示例(GUID):

53d9f073-9418-4d59-9c7f-2f2b43e86051

所以我认为有一些转换正在进行,尽管我不知道是哪一个?我还知道有“顺序guid”(用于提高性能),但这对“转换”问题没有多大帮助

当然还有另一种选择,CRM UI隐藏了真实的实体ID,但这仍然很奇怪,因为我在API实体中找不到CRM UI ID


所以,我想通过CRM API通过CRM UI ID获取实体。如何操作?

Dynamics CRM中的每个实体记录都有一个分配给它的Guid。保存guid的字段(aka属性)是EntityLogicalNameid。例如,account是
accountid
,一个名为new\u customentity的自定义实体将有一个名为new\u customentityid的字段

在新记录的创建过程中,Dynamics CRM将为该记录生成一个顺序id。注意:您可以为通过SDK进行的调用指定id,但不建议这样做,因为这将导致序列中断

此值不会直接显示在UI上。它可以通过调用JavaScript来检索

因此,如果我们想获取记录的Id,可以将以下代码片段保存到Dynamics CRM中的JavaScript WebResource文件中,并将事件
DisplayEntityId
注册为OnLoad函数。当实体被打开时,它将显示一个带有实体记录唯一id的警报框。这当然只是为了证明概念,因为它会引起严重的可用性问题

function DisplayEntityId() {
     alert(Xrm.Page.data.entity.getId());
}
还有另一种方法可以使用。在Dynamics CRM中打开所需的记录(必须是实际记录,而不是视图、仪表板等),然后将以下内容粘贴到浏览器URL中。按Enter键,实体记录的唯一ID将可用于复制

javascript:var guid=frames[0].Xrm.Page.data.entity.getId();var str1=guid.replace(/{/g,""); var copy=str1.replace(/}/g,"");(function( {window.prompt("Copy to clipboard: Ctrl+C, Enter", copy);})();

确保向右滚动以获取整个代码段

Dynamics CRM中的每个实体记录都有一个分配给它的Guid。保存guid的字段(aka属性)是EntityLogicalNameid。例如,account是
accountid
,一个名为new\u customentity的自定义实体将有一个名为new\u customentityid的字段

在新记录的创建过程中,Dynamics CRM将为该记录生成一个顺序id。注意:您可以为通过SDK进行的调用指定id,但不建议这样做,因为这将导致序列中断

此值不会直接显示在UI上。它可以通过调用JavaScript来检索

因此,如果我们想获取记录的Id,可以将以下代码片段保存到Dynamics CRM中的JavaScript WebResource文件中,并将事件
DisplayEntityId
注册为OnLoad函数。当实体被打开时,它将显示一个带有实体记录唯一id的警报框。这当然只是为了证明概念,因为它会引起严重的可用性问题

function DisplayEntityId() {
     alert(Xrm.Page.data.entity.getId());
}
还有另一种方法可以使用。在Dynamics CRM中打开所需的记录(必须是实际记录,而不是视图、仪表板等),然后将以下内容粘贴到浏览器URL中。按Enter键,实体记录的唯一ID将可用于复制

javascript:var guid=frames[0].Xrm.Page.data.entity.getId();var str1=guid.replace(/{/g,""); var copy=str1.replace(/}/g,"");(function( {window.prompt("Copy to clipboard: Ctrl+C, Enter", copy);})();

确保向右滚动以获取整个代码段

Dynamics CRM中的每个实体记录都有一个分配给它的Guid。保存guid的字段(aka属性)是EntityLogicalNameid。例如,account是
accountid
,一个名为new\u customentity的自定义实体将有一个名为new\u customentityid的字段

在新记录的创建过程中,Dynamics CRM将为该记录生成一个顺序id。注意:您可以为通过SDK进行的调用指定id,但不建议这样做,因为这将导致序列中断

此值不会直接显示在UI上。它可以通过调用JavaScript来检索

因此,如果我们想获取记录的Id,可以将以下代码片段保存到Dynamics CRM中的JavaScript WebResource文件中,并将事件
DisplayEntityId
注册为OnLoad函数。当实体被打开时,它将显示一个带有实体记录唯一id的警报框。这当然只是为了证明概念,因为它会引起严重的可用性问题

function DisplayEntityId() {
     alert(Xrm.Page.data.entity.getId());
}
还有一种方法可以使用。在Dynamics CRM中打开所需的记录(必须是实际记录,而不是视图、仪表板等),然后将以下内容粘贴到浏览器URL中。按Enter键,实体记录的唯一ID将可用于复制

javascript:var guid=frames[0].Xrm.Page.data.entity.getId();var str1=guid.replace(/{/g,""); var copy=str1.replace(/}/g,"");(function( {window.prompt("Copy to clipboard: Ctrl+C, Enter", copy);})();

确保向右滚动以获取整个代码段

Dynamics CRM中的每个实体记录都有一个分配给它的Guid。保存guid的字段(aka属性)是EntityLogicalNameid。例如,account是
accountid
,一个名为new\u customentity的自定义实体将有一个名为new\u customentityid的字段

在新记录的创建过程中,Dynamics CRM将为该记录生成一个顺序id。注意:您可以为通过SDK进行的调用指定id,但不建议这样做,因为这将导致序列中断

此值不会直接显示在UI上。它可以通过调用JavaScript来检索

因此,如果我们想获取记录的Id,可以将以下代码片段保存到Dynamics CRM中的JavaScript WebResource文件中,并将事件
DisplayEntityId
注册为OnLoad函数。当实体被打开时,它将显示一个带有实体记录唯一id的警报框。这当然只是为了证明概念,因为它会引起严重的可用性问题

function DisplayEntityId() {
     alert(Xrm.Page.data.entity.getId());
}
还有另一种方法可以使用。开放式