请阅读以下内容,并告诉我我做错了什么。
我发送的请求:
https://gravityrush.crm5.dynamics.com/api/data/v9.1/accounts?$expand=ownerid/$ref
我期望的答复:
"ownerid":{
"@odata.type":"#Microsoft.Dynamics.CRM.systemuser",
"@odata.id":"https://gravityrush.crm5.dynamics.com/api/data/v9.0/systemusers(41041b99-e1ae-46c6-a10c-95ce77fc0b18)"
}
我收到的回复:
"ownerid":{
"@odata.type":"#Microsoft.Dynamics.CRM.systemuser",
"@odata.id":"https://gravityrush.crm5.dynamics.com/api/data/v9.1/owners()"
}
谢谢。
答案 0 :(得分:0)
https://orgurl/api/data/v8.2/accounts()?$ select = _ownerid_value
您将获得每个帐户记录的OwnerId。
答案 1 :(得分:0)
我认为这可能是与此字段类型相关的限制/错误。
如您所知,ownerid
字段可以指向系统用户或团队记录,如果您查看该字段定义,看到这种关系实际上是与称为Owner
的实体有关的,这就是为什么要获取owners()网址的原因:
"@odata.id":"/api/data/v9.1/owners()"
我尝试使用owninguser
和owningteam
字段来解决此问题,但似乎也存在问题,因为当我添加$ ref时,我开始获取该字段的null值:
GET /api/data/v9.1/accounts?$select=accountid&$expand=owninguser($select=systemuserid)
"owninguser":{
"systemuserid":"f30a6a42-3067-4c78-b348-9cbc56531f5e",
"ownerid":"f30a6a42-3067-4c78-b348-9cbc56531f5e"
}
GET /api/data/v9.1/accounts?$select=accountid&$expand=owninguser/$ref
"owninguser":null
可以肯定的是,我尝试对Customer
字段执行相同的操作(种类相同,该字段可以指向联系人或帐户记录),但我没有发现此问题,您可以使用以下查询获取对客户/联系人的引用:
GET /api/data/v9.1/incidents?$select=incidentid&$expand=customerid_account/$ref, customerid_contact/$ref