Как выбрать справочные атрибуты Dynamics CRM? - PullRequest
0 голосов
/ 31 октября 2018

Пожалуйста, прочитайте следующее и скажите, что я сделал не так.

Запрос, который я отправил:

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()"
}

Спасибо.

Ответы [ 2 ]

0 голосов
/ 01 ноября 2018

Я думаю, что это ограничение / ошибка, связанная с этим типом поля.

Как вы знаете, поле ownerid может указывать на запись systemuser или team , и если вы посмотрите на определение поля, вы увидите, что отношение на самом деле для сущности с именем Owner, и поэтому вы получаете url владельцев ():

"@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 (по тому же принципу, когда это поле может указывать на запись contact или account ), но Я не нашел эту проблему, вы можете получить ссылку на учетную запись / контакт, используя следующий запрос:

GET /api/data/v9.1/incidents?$select=incidentid&$expand=customerid_account/$ref, customerid_contact/$ref
0 голосов
/ 31 октября 2018
  • Попробуйте отправить запрос API, как показано ниже, и у вас будет OwnerId

https://orgurl/api/data/v8.2/accounts()?$select=_ownerid_value

Вы получите OwnerId каждой записи учетной записи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...