1

CAML 查询相当新,但尝试根据 Status = Completed 和日期范围查询列表。

它抛出以下错误“意外错误:一种或多种字段类型未正确安装。转到列表设置页面以删除这些字段。Microsoft.SharePoint”

Status 和 Created 都是系统列,所以很确定我的字段名称是正确的我已经测试了没有日期范围的查询并且它按预期运行,所以我认为我的问题介于 和 之间。根据我的阅读,Created 预计时间会跟随日期。查询如下,任何帮助将不胜感激。

<Where>   
<And>                               
   <And>    
      <Eq><FieldRef Name="Status" />Value Type="Choice">Completed</Value></Eq> 
   </And>          
      <Geq>         
         <FieldRef Name="Created" /><Value IncludeTimeValue="TRUE"    
Type="DateTime">2013-07-02T00:00:01Z</Value>
  </Geq>
       <Leq>              
          <FieldRef Name="Created" /><Value IncludeTimeValue="TRUE" 
Type="DateTime">2013-07-02T23:59:59Z</Value>
       </Leq>
</And> 
</Where>
4

1 回答 1

1

您在上面的查询中有一些基本的语法错误,因此它们可能会导致问题。看看这是否有帮助。

  • 您在第一个标签中缺少左尖括号。
  • 你有太多的标签,而且它们是乱序的。
  • 我将第一个标签的 Type 属性更改为 Text。

    <Where>   
    <And>    
        <Eq><FieldRef Name="Status" /><Value Type="Text">Completed</Value></Eq> 
        <And>          
            <Geq>         
                <FieldRef Name="Created" /><Value IncludeTimeValue="TRUE" Type="DateTime">2013-07-02T00:00:01Z</Value>
            </Geq>
            <Leq>              
                <FieldRef Name="Created" /><Value IncludeTimeValue="TRUE" Type="DateTime">2013-07-02T23:59:59Z</Value>
            </Leq>
        </And>
    </And> 
    </Where>
    
于 2013-08-14T23:32:52.437 回答