Адресация поля UTCDateTime в URL объекта данных для метода patch в почтальоне ~ D365FO

Приветствую вас!

Я пытаюсь обновить (т.е. метод Patch) объект PartyLocationPostalAddressesV2 через почтальона для целей интеграции. У него есть один ключ, который содержит три поля [PartyNumber, LocationID, ValidFrom]. Мне нужно обратиться к URL.

Я пытаюсь так:

      D365EnvironmentAddress/.../PartyLocationPostalAddressesV2(dataAreaId='206'PartyNumber='000219507'LocationId='L000007558'ValidFrom='2021-10-20T06:54:04Z')

Но я получаю эту ошибку:

      "Message": "No HTTP resource was found that matches the request URI '">D365EnvironmentAddress/.../PartyLocationPostalAddressesV2(dataAreaId='206'PartyNumber='000219507'LocationId='L000007558'ValidFrom=2021-10-20T06:54:04Z)'. No route data was found for this request."

Я пробовал с фильтром вместо адресации,

      D365EnvironmentAddress/.../PartyLocationPostalAddressesV2 PartyNumber eq '000219507' and LocationId eq 'L000007558' and ValidFrom eq 2021-10-20T06:54:04Z

и это работает, но для обновления поля нам нужно использовать адресацию только в соответствии с моими знаниями, поэтому, пожалуйста, помогите мне с этим. Я знаю, что мне нужно что-то изменить в поле validfrom. Но не смог узнать. Потому что при использовании фильтра я получил ту же ошибку, поэтому попытался удалить одинарные кавычки для поля validFrom, и это сработало. Я пробовал то же самое для адресации, но мне чего-то не хватает. Пожалуйста, проведите меня через это. Заранее спасибо! Я тоже прикрепил скриншоты.

Этот при использовании запроса фильтра

Этот при использовании адресации

1 ответ

С моей стороны это работало в среде 10.0.20 с демонстрационными данными Contoso.

Вот некоторые из проблем, с которыми я столкнулся, которые я также вижу в примере запроса вопроса:

  • Запрос в формате адресации включает в себя расширение . В этом нет необходимости, так как данные PartyLocationPostalAddressesV2сущность не относится к конкретной компании. Включая dataAreaIdс форматом адресации приводит к описанной проблеме для этих объектов.
  • Как и в запросе с фильтром, значение для ValidFromне должно быть в кавычках. Это также приводит к описанной проблеме.

Поэтому убедитесь, что оба они исправлены, прежде чем пытаться снова.

Для справки, это запрос GET, который сработал для меня:

      {{D365EnvironmentAddress}}/data/PartyLocationPostalAddressesV2(PartyNumber='000000002',LocationId='000000002',ValidFrom=2013-07-02T18:38:16Z)

Запрос PATCH выглядит так же, я использовал следующую полезную нагрузку для успешного обновления улицы (убедитесь, что тип содержимого полезной нагрузки установлен на application/json):

      {
    "Street": "123 Third Street"
}

Обратите внимание, что запрос PATCH возвращает код состояния 204 No Content, но данные обновляются.

Наконец, вот данные JSON записи, с которой я работал, возвращенные запросом GET:

      {
    "@odata.context": "https://usnconeboxax1aos.cloud.onebox.dynamics.com/data/$metadata#PartyLocationPostalAddressesV2/$entity",
    "@odata.etag": "W/\"JzAsNTYzNzE0NDgyNjszNjMxNDk1NjIsNTYzNzE0NDgyNic=\"",
    "PartyNumber": "000000002",
    "LocationId": "000000002",
    "ValidFrom": "2013-07-02T18:38:16Z",
    "Address": "123 Third Street\nBaldwin City, KS 66006\nUSA",
    "IsPrivate": "No",
    "Description": "Head Office",
    "IsPrimary": "Yes",
    "IsPrivatePostalAddress": "No",
    "IsRoleDelivery": "No",
    "IsPrimaryTaxRegistration": "Yes",
    "CityInKana": "",
    "ZipCode": "66006",
    "IsRoleBusiness": "No",
    "PostBox": "",
    "DunsNumber": "",
    "Apartment_RU": "",
    "DistrictName": "",
    "BuildingCompliment": "",
    "CountryRegionISOCode": "US",
    "StreetInKana": "",
    "CountryRegionId": "USA",
    "IsLocationOwner": "Yes",
    "TimeZone": null,
    "ValidTo": "2154-12-31T23:59:59Z",
    "Longitude": 0,
    "Building_RU": "",
    "County": "",
    "StreetNumber": "",
    "Latitude": 0,
    "IsRoleHome": "No",
    "IsRoleInvoice": "No",
    "City": "Baldwin City",
    "AttentionToAddressLine": "",
    "Roles": "Business",
    "Street": "123 Third Street",
    "State": "KS"
}
Другие вопросы по тегам