soc*_*pet 6 url microsoft-dynamics dynamics-crm odata dynamics-crm-365
在 Dynamics 365 中遇到这个问题,看起来应该可以正常工作,但给了我:
类型“Microsoft.Dynamics.CRM.biz_productbuyer”上的属性“_biz_buyerlookupid_value”不是导航属性或复杂属性。只能扩展导航属性。
我可以复制此处提供的示例,它可以找到:
基本上尝试阅读相关领域,这样我就不必再进行查询。
Product Buyer
因此,我在一个名为或 的自定义实体中有一个查找字段,biz_productbuyers
用于引入Contact
与其关联的名称Product
。
biz_buyerlookupid
当您查看实体的字段时,将调用该字段。
当您使用 Web API 时,它表示biz_buyerlookupid
该实体中不存在任何被调用的内容。把它扔掉$select=
并把它打开,这样我就可以搜索它。
有一个领域叫_biz_buyerlookupid_value
. 我把它放进去$select
,它返回:
{
@odata.etag: "W/"20636204"",
_biz_buyerlookupid_value: "906595fd-2a83-dc11-ae20-000feaed3854",
biz_productbuyerid: "8be67d14-9efb-4335-98c7-000451a50cef",
}
Run Code Online (Sandbox Code Playgroud)
显然这两个字段之间存在某种关系,但听起来像是_biz_buyerlookupid_value
对 的查找Contacts
。确实_biz_buyerlookupid_value
与实体中的实际值相对应contact
,即单个contactid
。我检查了。已尝试以下所有方法并收到上述消息:
/api/data/v9.0/biz_productbuyers?$select=_biz_buyerlookupid_value&$expand=_biz_buyerlookupid_value($select=contactid, fullname)
/api/data/v9.0/biz_productbuyers?$select=_biz_buyerlookupid_value&$expand=biz_productbuyerid($select=contactid, fullname)
/api/data/v9.0/biz_productbuyers?$select=biz_productbuyerid&$expand=biz_productbuyerid($select=contactid, fullname)
/api/data/v9.0/biz_productbuyers?$select=biz_productbuyerid&$expand=_biz_buyerlookupid_value($select=contactid, fullname)
Run Code Online (Sandbox Code Playgroud)
那么这是怎么回事呢?据我所知,它应该尽可能地从实体中引入contactid
和引入。fullname
contact
jas*_*ipt 11
我的理解是,该_[field]_value
项目将立即为您提供关联项目的 GUID。
要使用,$expand
您必须使用架构名称,因此它应该如下所示:
$expand=biz_buyerlookupid($select=contactid, fullname)
Run Code Online (Sandbox Code Playgroud)
并注意biz_buyerlookupid
区分大小写。
您可以查看 CRM 实例的元数据以获得正确的大小写:https://[org].crm.dynamics.com/api/data/v9.0/$metadata