400 - неверный запрос при сохранении поля "Только дата" в CRM с использованием веб-API
Я использую подход Microsoft Dynamics 365 Web API для взаимодействия с данными CRM.
Здесь я хочу обновить поле с типом: DATE and TIME
,
Значение даты, которое я передаю в теле запроса, выглядит следующим образом:
"packfirstday":"1-15-2018"
За исключением вышесказанного, я также пытался с DateTime и с различными форматами даты. например
mm-dd-yyyy
m-dd-yyyy
mm/dd/yyyy
yyyy/mm/dd
yyyy-mm-dd
PS: я пытаюсь опубликовать без поля даты, он успешно сохраняет детали.
1 ответ
Проблема не в коде, а в простом недоразумении.
Есть 2 компонента, а именно Поведение и Формат. У вас установлен формат "Только дата", а не " Поведение". Поведение определяет условия базы данных, тогда как формат используется для отображения элементов управления выбора даты в форме.
Поэтому, когда вы устанавливаете поле в веб-интерфейсе API только с частью даты, база данных CRM также ожидает часть времени.
Либо установите поведение также как только дату, так что это будет работать:
"packfirstday":"2018-01-15" //YYYY-mm-dd format
Или измените свой код, чтобы пройти часть времени также:
"packfirstday":"2018-01-15T11:10:00.000Z" //UTC offset
Так как локальное поведение пользователя все еще ожидает часть времени.