online item create web-services sharepoint sharepoint-2010 sharepoint-api

web services - create - SharePoint List.getListItems WebService para devolver los contenidos de la subcarpeta, recursivamente



sharepoint javascript rest (2)

Debe llamar recursivamente al servicio para obtener todos los elementos dentro de las subcarpetas. No hay una opción para hacerlo OOTB. En su lugar, siempre puede escribir su servicio web personalizado de SharePoint para lograr esto.

  1. http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/16a2d993-2f5e-4242-8e5a-451a78c064a3
  2. http://blogs.msdn.com/b/karthick/archive/2006/03/27/562245.aspx

Estoy llamando al servicio web lists.asmx de CXF . La siguiente invocación no devuelve archivos de las sub carpetas de la lista. Devuelve la carpeta1, la carpeta2 y el archivo1.pdf

Shared Documents folder1 file2.docx file3.pdf folder2 sub-folder1 file5.pdf file4.pdf file1.pdf

Llamada SOAP

POST /_vti_bin/lists.asmx HTTP/1.1 Accept-Encoding: gzip,deflate <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:soap1="http://schemas.microsoft.com/sharepoint/soap/"> <soap:Header/> <soap:Body> <soap1:GetListItems> <soap1:listName>Shared Documents</soap1:listName> <queryOptions> <QueryOptions> <IncludeMandatoryColumns>TRUE</IncludeMandatoryColumns> <ViewAttributes Scope="RecursiveAll"/> <DateInUtc>TRUE</DateInUtc> </QueryOptions> </queryOptions> </soap1:GetListItems> </soap:Body> </soap:Envelope>

¿Alguna pista sobre cómo obtener archivos de la carpeta1, la carpeta3 y la subcarpeta1 incluidos en el resultado ?. Si el servicio web de Listas no puede hacerlo, ¿hay un servicio / método alternativo?

Información adicional: Hay otro servicio web, SiteData (_vti_bin/sitedata.asmx) . Tiene un método similar (getListItems) y devuelve todos los archivos con solo el nombre de la lista y sin parámetros adicionales. El problema es que no pude averiguar cómo / dónde especificar el parámetro Paging, ya que NO hay elemento de entrada queryOptions como en las listas servicio web.

<soap1:strListName>?</soap1:strListName> <soap1:strQuery>?</soap1:strQuery> <soap1:strViewFields>?</soap1:strViewFields> <soap1:uRowLimit>?</soap1:uRowLimit>


Es posible obtener los contenidos de la lista recursivamente, utilizando <ViewAttributes Scope="RecursiveAll"/> elemento. Hay un error silly en mi sobre de jabón. El elemento queryOptions no tiene espacio de nombres. Lo arreglé en el siguiente texto.

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:soap1="http://schemas.microsoft.com/sharepoint/soap/"> <soap:Header/> <soap:Body> <soap1:GetListItems> <soap1:listName>Shared Documents</soap1:listName> <**soap1:**queryOptions> <QueryOptions> <IncludeMandatoryColumns>TRUE</IncludeMandatoryColumns> <ViewAttributes Scope="RecursiveAll"/> <DateInUtc>TRUE</DateInUtc> </QueryOptions> </**soap1:**queryOptions> </soap1:GetListItems> </soap:Body> </soap:Envelope>

Por cierto, hay una gran herramienta, U2U CAML Builder para construir SharePoint CAML. Desearía haberlo encontrado hace unas semanas.