Обычно я запрашиваю веб-API D365 и пытаюсь получить все связанные контакты для учетной записи.
Перешел по этой ссылке:
https://docs.microsoft.com/en-us/dynamics365/customer-engagement/developer/webapi/query-data-web-api#retrieve-related-entities-by-expanding-navigation-properties
Попытка использовать $expand
, но это только принесет _primarycontactid_value
.Так что только один основной контакт, а не все, кто связан с учетной записью.
Это будет выглядеть примерно так:
/api/data/v9.0/accounts&?select=name&$expand=Contacts(fullname, email)
Единственные поля в учетной записив них есть «контакт»:
preferredcontactmethodcode
_primarycontactid_value
address2_primarycontactname
address1_primarycontactname
_tcc_primaryinvoicecontactid_value
_tcc_consultingcontact_value
_tcc_contactlist_value //some custom field that doesn't apparently do anything
_new_foundationcontact_value
_tcc_primaryapcontactid_value
Так что ни один из них не может быть использован для поиска всех контактов ... которые я знаю.
Другой способсделать это будет сначала с контакта, а затем $expand=
на _parentcustomerid_value
.Но мне нужно отфильтровать учетную запись, чтобы указать определенные учетные записи, которые я хочу ... это просто приведет к каждой учетной записи и будет невероятно медленным.Я не уверен, что есть способ $filter=
для значения $expand=
.
Итак:
- Как я могу запросить учетную запись и все связанные с контактами дляАккаунт?
- Если нет возможности, можно ли использовать
$filter=
on и $expand=
value?
Попытка свести количество запросов к минимуму.Эту проблему можно решить, выполнив несколько итеративных запросов, но это просто сделает его невероятно медленным.Или просто запросите все и соберите все вместе, но это тоже будет медленно.