Abbiamo già visto in passato che il campo di tipo "Boolean" in SharePoint è un campo un pò particolare, perchè sotto sotto salva un tipo di dato "bit" (all'interno di SQL Server) che in realtà vale "1" per il "vero" e "0" per il "falso".
Quindi, se cerchiamo di fare una query CAML che nella clausola WHERE ha al suo interno un campo di questo tipo, dobbiamo stare attenti ad applicare la medesima teoria. Potremmo infatti incappare nello scrivere una query di questo tipo:

<Where>

<Eq>
<FieldRef Name="CampoDiTipoBoolean" />
<Value Type="Boolean">TRUE</Value>
</Eq>
</Where>

Ecco.. questa query CAML è SBAGLIATA.
La query corretta indica che il valore da confrontare con il campo di tipo Boolean, dovrà essere invece un valore di tipo Integer.

<Where>

<Eq>
<FieldRef Name="CampoDiTipoBoolean" />
<Value Type="Integer">1</Value>
</Eq>
</Where>

In questo modo, vedrete che le vostre query CAML a fronte del filtro su campi di tipo Boolean, funzioneranno alla perfezione.