Вы подтвердили, что ссылаетесь на правильные имена полей?
Запрос CAML, который вы определили в soapEnv
, требует использования полей внутренних имен, а не их отображаемых имен. Я гарантирую, Metric Name
не правильно; это, вероятно, что-то вроде Metric_x0020_Name
или похожее.
Как вы определяете внутренние имена ваших полей? Есть несколько способов.
Позвольте мне представить вам замечательную утилиту под названием U2U CAML Query Builder . Это должно быть в каждом наборе инструментов разработчика SharePoint. Запустите его, укажите его в нужном списке (подключитесь через веб-службу SharePoint, если вы не на сервере), и это позволит вам создавать запросы CAML, используя отображаемые имена полей, но генерировать правильный базовый CAML для вы. Он также отлично подходит для создания сложных фильтров и логической логики, а также позволяет выполнять запрос и получать немедленную обратную связь.
Другой подход к получению имени поля состоит в том, чтобы перейти к настройкам списка, затем нажать на имя интересующего вас поля. Проверьте свой URL и найдите параметр строки запроса с именем &Field
; это разгласит внутреннее имя поля. Это значение будет URL Encoded, если вы используете Internet Explorer (простой онлайн-декодер может помочь расшифровать значение), но если вы используете Firefox, вы увидите значение без кода.
Вставьте правильные имена полей в ваш запрос CAML и передайте ему еще один поворот.