2011-01-06 8 views
3

jQueryとWSS 3.0 SOAPサービスを使用して、リストからデータを取得して表示しています。私は、CreatedBy列でデータをフィルタリングしたいです。ここに私のCAMLクエリがあります:SharePoint - GetListItems SOAP呼び出しでユーザールックアップを行う

<Query> 
<Where> 
    <And> 
     <Leq> 
      <FieldRef Name="Created" /> 
      <Value Type="DateTime" IncludeTimeValue="FALSE">2011-1-8</Value> 
     </Leq> 
     <Geq> 
      <FieldRef Name="Created" /> 
      <Value Type="DateTime" IncludeTimeValue="FALSE">2011-1-2</Value> 
     </Geq> 
     <Contains> 
      <FieldRef Name="CreatedBy" LookupId="TRUE" /> 
      <Value Type="User">Smith</Value> 
     </Contains> 
    </And> 
</Where> 

私はこれを実行すると、SharePointのは、次のエラーが返されます。

0x80004005が - この操作を完了できません。もう一度お試しください。

ユーザールックアップを削除すると、発行者が解決されます。どこが間違っていますか?

答えて

4

表示名を使用する場合は、LookupId="TRUE"またはType="User"を使用できません。それは次のようになります。

さらに多くの例については、my answer hereを参照してください。

編集:

はまた、私はちょうどあなたの<And></And>ノードは三つのサブノードが含まれて気づきました。それぞれには2つしか含まれていないので、次のようなものが必要です。

<Where> 
    <And> 
    <And> 
     <Leq> 
     <FieldRef Name="Created" /> 
     <Value Type="DateTime" IncludeTimeValue="FALSE">2011-1-8</Value> 
     </Leq> 
     <Geq> 
     <FieldRef Name="Created" /> 
     <Value Type="DateTime" IncludeTimeValue="FALSE">2011-1-2</Value> 
     </Geq> 
    </And> 
    <Contains> 
     <FieldRef Name="CreatedBy" /> 
     <Value Type="Text">Smith</Value> 
    </Contains> 
    </And> 
</Where> 
+0

ありがとうございます。 – dxprog

+0

この作品はありませんか?もしそうなら、あなたは受け入れるべきです。 – trgraglia

関連する問題