Php Sharepoint Caml

Php Sharepoint Caml,php,sharepoint,list,caml,Php,Sharepoint,List,Caml,我正在使用php和caml从sharepoint检索列表,只是它似乎带回了一个最小列表,我想知道如何设置列表视图以显示所有列表项,而不是默认的最小列表。我现在是sharepoint方面的专家,这是我第一次使用caml,所以请原谅我在这个问题上的无知 这是我的问题 <GetListItems xmlns="http://schemas.microsoft.com/sharepoint/soap/"> <listName>'.$list.'</l

我正在使用php和caml从sharepoint检索列表,只是它似乎带回了一个最小列表,我想知道如何设置列表视图以显示所有列表项,而不是默认的最小列表。我现在是sharepoint方面的专家,这是我第一次使用caml,所以请原谅我在这个问题上的无知

这是我的问题

<GetListItems xmlns="http://schemas.microsoft.com/sharepoint/soap/">  
          <listName>'.$list.'</listName> 
          <rowLimit>'.$limit.'</rowLimit>
          '.$queryXML.'
          <queryOptions xmlns:SOAPSDK9="http://schemas.microsoft.com/sharepoint/soap/" >              
              <QueryOptions/> 
          </queryOptions> 
        </GetListItems>'

“.$list”
“.$limit。”
“.$queryXML。”
'
我填写列表并限制变量,它会从sharepoint返回默认列表视图,但我想添加这样一种功能,即只返回列表中的所有内容,或者告诉它要返回哪些列,但我在internet上搜索这些内容几乎没有运气:(


提前感谢您的回复

您应该首先查看web服务方法的文档,网址为。您需要为ViewFields参数提供要返回的字段

创建CAML查询不是为胆小的人准备的。存在很多差异,并且该语言用于许多不相关的任务。从本机对象模型执行CAML查询与调用web服务略有不同。幸运的是,U2U已经创建了它,允许您通过选择要连接的方法来创建CAML查询ct(您案例中的Web服务)、所需的列表、字段、筛选和排序标准

如果您的目标是SharePoint 2010,您可能希望避免(受人尊敬的)web服务和使用REST/OData API。是一种类似于GData的API,用于访问各种数据源,允许轻松筛选和选择,最重要的是,它对所有数据源都是统一的。您可以直接从代码调用REST API,也可以使用为列表生成代理类,以便在ve中执行查询这是一个非常简单的方法


查看“”以了解REST API的详细介绍。

您使用的是SP 2013还是2010?如果是2013年,我建议您使用针对SP的REST服务。它更易于使用,而且您不必使用那种疯狂的CAML。

您需要转到SharePoint上的列表设置,并设置负责显示一定数量记录的项目限制。如果未指定视图名称,则使用默认视图。如果此默认视图设置为批量显示项目或显示有限数量的项目,则您将仅获取该数量的记录。这是要通过UI在列表/库设置中设置所有。如果确实指定了CAML查询以及所有选项,则将忽略该视图,您将获得CAML查询返回的所有记录。下面是一个定义新CAML查询的示例(在C#中),其中使用了视图ID(在大括号之间)此外,还提供了一个CAML查询。这缩小了从该视图获取的结果的范围。您可以轻松地通过谷歌搜索如何查找列表ID

XmlDocument xmlDoc = new System.Xml.XmlDocument();
XmlNode ndQuery = xmlDoc.CreateNode(XmlNodeType.Element, "Query", "");
XmlNode ndQueryOptions = xmlDoc.CreateNode(XmlNodeType.Element, "QueryOptions", "");
ndQueryOptions.InnerXml = "<IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns>" + "<DateInUtc>FALSE</DateInUtc>";
XmlNode ndViewFields = xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "");
ndQuery.InnerXml = "<Where><Eq><FieldRef Name='LinkTitle'/><Value Type='Text'>New Tasks</Value></Eq></Where>";
XmlNode confNode = listsSvc.GetListItems("NotificationConfig", "{92428C7A-3F35-41B2-AEC4-B8B1C7E64533}", ndQuery, null, null, ndQueryOptions, null);
XmlDocument xmlDoc=new System.Xml.XmlDocument();
XmlNode ndQuery=xmlDoc.CreateNode(XmlNodeType.Element,“Query”,“”);
XmlNode ndQueryOptions=xmlDoc.CreateNode(XmlNodeType.Element,“QueryOptions”和“”);
ndQueryOptions.InnerXml=“FALSE”+“FALSE”;
XmlNode ndViewFields=xmlDoc.CreateNode(XmlNodeType.Element,“ViewFields”和“”);
ndQuery.InnerXml=“新任务”;
XmlNode confNode=listsSvc.GetListItems(“NotificationConfig”,“{92428C7A-3F35-41B2-AEC4-B8B1C7E64533}”,ndQuery,null,null,ndQueryOptions,null);