8

SharePoint 2010で「NOTIN」動作のようなことを行う方法はありますか?次のようなIN動作を簡単に実装できます。

<Where>
   <In>
      <FieldRef Name="ID"/>
      <Values>
         <Value Type="Counter">1</Value>
         <Value Type="Counter">2</Value>
         <Value Type="Counter">3</Value>
         <Value Type="Counter">4</Value>
         <Value Type="Counter">5</Value>
      </Values>
   </In>
</Where>

しかし、値の列挙に含まれないすべての値を選択する方法はありますか?

ユースケースは次のとおりです。AllowMultipleValues=trueのルックアップフィールドがあり、ルックアップフィールドに含まれていないすべてのアイテムをルックアップリストから取得する必要があります。

前もって感謝します!

4

4 に答える 4

2

SharePoint 2010 以降、NotIncludesあなたに役立つ要素があります。MSDN から:

指定されたフィールドが複数の値を許可するルックアップ フィールドである場合、FieldRef 要素で指定されたフィールドのリスト アイテムから Value 要素を除外することを指定します。

テンプレート:

<NotIncludes>
    <FieldRef Name="Field_Name" />
    <Value Type="Field_Type" />
    <XML />
</NotIncludes>
于 2014-01-02T14:32:45.940 に答える
0

等しくないオプションは、このCAMLクエリを作成するための最良の方法だと思います

多分これ(これをテストしなかったので、私に耐えてください)

<Query>
   <Where>
     <And>
       <Neq>
          <FieldRef Name="ID" /><Value Type="Counter">1</Value>
       </Neq>
       <Neq>
          <FieldRef Name="ID" /><Value Type="Counter">2</Value>
       </Neq>
       <Neq>
          <FieldRef Name="ID" /><Value Type="Counter">3</Value>
       </Neq>
     </And>
   </Where>
</Query>

利用可能な比較演算子を確認する必要があります

  • 含まれています
  • BeginsWith
  • Eq、Equal
  • Neq、等しくない
  • Gt、より大きい
  • Lt、未満
  • Geq、以上
  • Leq、以下
  • DateRangesOverlap、定期的なイベントの日付を指定された値と比較します
  • IsNotNull
  • 無効である
于 2012-07-20T20:02:52.277 に答える
0

私が最も近いのは を使用すること<NotIncludes></NotIncludes>ですが、何らかの理由で と同じように機能しません<In></In>。で<In>使えます<Values>。1<NotIncludes>つの値しか指定できないようです。残りは と<Or>同様に編集する必要があります<Neq>

于 2013-12-03T12:09:33.737 に答える