запрос данных из Sharepoint с помощью построителя отчетов 2.0: пропущенные поля - PullRequest
3 голосов
/ 01 февраля 2010

Я использую SQL Server 2008 с построителем отчетов 2.0, чтобы попытаться запросить данные из списка Sharepoint, как описано в этого учебного пособия . Отчет настроен на использование источника данных XML со строкой подключения, установленной на http://mySharepointSite/_vti_bin/lists.asmx.

Однако я не могу получить все поля из списка Sharepoint, даже если я указываю представление, которое содержит именно те поля, которые я хочу, и не более. В зависимости от того, как я манипулирую запросом, я получаю либо поле Release или поле Theme, но не оба одновременно. Вот мой запрос, как он есть сейчас:

<Query><SoapAction>http://schemas.microsoft.com/sharepoint/soap/GetListItems</SoapAction>
   <Method Namespace="http://schemas.microsoft.com/sharepoint/soap/" Name="GetListItems">
      <Parameters>
         <Parameter Name="listName">
            <DefaultValue>{8529D70B-D632-4CC8-A1E7-2C25F29BE1E0}</DefaultValue>
         </Parameter>
         <Parameter Name="viewName">
            <DefaultValue>{2FC6AA42-EA95-4C18-AB07-33E25EBBA85D}</DefaultValue>
            <ViewFields>
               <FieldRef Name="Resolve_x0020__x0023_" />
               <FieldRef Name="Product" />
               <FieldRef Name="Release" />
               <FieldRef Name="Theme" />
               <FieldRef Name="Pre_x002d_Req_x0020_Estimate" />
            </ViewFields>
         </Parameter>
      </Parameters>
   </Method>
   <ElementPath IgnoreNamespaces="True">*</ElementPath>
</Query>

Когда я тестировал с использованием Report Builder 3.0 со встроенным типом источника данных List Sharepoint, он мог видеть поля Theme и Release в моем списке. Кто-нибудь знает, что происходит с построителем отчетов 2.0, хотя, когда я не получаю все поля в данном списке и представлении?

Обновление: В ответ на вопросы nelsonwebs:

  1. "Содержит ли список форму InfoPath?" Я не знаю? Похоже, что он содержит только текстовые данные.
  2. "Как данные списка вводятся в столбцы?" Я не уверен, что вы спрашиваете. Данные в Sharepoint вводятся другими людьми, и я полагаю, что они просто используют обычные средства Sharepoint (добавление нового элемента в Список).
  3. "Вы настраивали список, например, добавляя / корректируя типы контента?" Это список, который уже некоторое время присутствует на нашем сайте Sharepoint, и он был настроен так, что в нем есть типы полей, такие как Number, Multiple строк текста и Choice, но я думаю, что это просто типы Sharepoint по умолчанию.

1 Ответ

1 голос
/ 05 февраля 2010

Джин Чен на Форумы Microsoft нашел решение для меня. Очевидно, что когда поле имеет нулевое значение, даже если это поле находится в нужном представлении, оно не будет возвращать поле. Хитрость заключается в том, чтобы явно перечислить нужные поля в теге ElementPath:

<ElementPath IgnoreNamespaces="true">
    GetListItemsResponse/GetListItemsResult/listitems/data/row{@field1,@field2,@field3,@field4}
</ElementPath>
...