2011-01-18 2 views
1

어떤 이유인지 필자는 CAML 및 웹 서비스를 사용하여 SharePoint 2007에 Python suds 라이브러리를 쿼리하려고합니다. 나는 0 결과 나 <Query/> 또는 <Query><Where/></Query>에 오류가 발생하지만, 단순한 동어 반복 WHERE x = 1 OR x != 1 모든 항목을 얻을 몇 가지 이유를 들어목록에서 모든 항목을 검색하는 올바른 SharePoint CAML 쿼리는 무엇입니까?

listItems = client.service.GetListItems(
    listName, '', Raw('<Query />'), viewFields, 0, 
    Raw("""<QueryOptions> 
     <IncludeMandatoryColumns>TRUE</IncludeMandatoryColumns> 
     </QueryOptions>"""), 
    None) 

:처럼 통화가 보인다.

모든 목록 항목을 가져 오는 올바른 방법은 무엇입니까?

답변

1

모든 항목을 가져 오려면 여기에 orderby 절을 넣고 임의의 열을 지정하십시오. 모든 것을 돌려 주어야합니다 ...

1

바보 같은 점이 있으시면 Queryquery 요소 내에 넣어야합니다. 그 결과

<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'> 
<soapenv:Body> 
    <GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'> 
    <listName>TestQuery</listName> 
    <query><Query><Where><Eq><FieldRef Name='Title'/> 
     <Value Type='Text'>One</Value></Eq></Where></Query> 
    </query> 
    <viewFields><ViewFields><FieldRefName='Title'/> 
    </ViewFields></viewFields><RowLimit>1</RowLimit> 
</GetListItems></soapenv:Body></soapenv:Envelope> 

에서, GetListItems 웹 서비스 쿼리가 잘못된 것을 결정하고 어떤 항목을 반환과 같은 결과 SOAP 봉투 보인다. GetListItems Webservice ignores my query filter

+0

좋은 조언이긴하지만, suds 라이브러리는 나를위한'' (소문자) 래퍼를 만듭니다. 비어 있지 않은 ''(대문자로) 쿼리는 잘 작동합니다. suds가 빈 문자열 ('')에 대해 동일한 동작을하는지 확인하기 위해 디버거에 들어가야 할 것입니다 ... – joeforker

0

는 0 사용하는 ROWLIMIT 매개 변수 :

또한이 게시물을 참조하십시오. 100과 비슷한 것을 시도하십시오.

+0

0은 '제한 없음'을 의미한다고 생각했습니다. – joeforker

관련 문제