我正在尝试根据日期和时间过滤Sharepoint列表。但它只适用于日期,忽略数据和时间字段中的时间。
答案 0 :(得分:9)
在SharePoint Designer中,我在高级模式下从我的视图编辑CAML查询。我在CAML标签值类型="日期时间" 中添加 IncludeTimeValue =" True" 。我按时间过滤了我的搜索结果。
<Query>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE"/>
</OrderBy>
<Where>
<Or>
<Gt>
<FieldRef Name="Start"/>
<Value Type="DateTime" IncludeTimeValue="True">
<Today/>
</Value>
</Gt>
<Gt>
<FieldRef Name="TimeOver"/>
<Value Type="DateTime" IncludeTimeValue="True">
<Today/>
</Value>
</Gt>
</Or>
</Where>
</Query>
答案 1 :(得分:3)
首先,使用[Today]通配符进行SharePoint过滤仅比较日期,而不是时间。据我所知,没有网络界面比较时间的方式。
假设“TimeOver”是您的项目截止日期,“开始”是项目开始的时间......
在过期时通过以下内容向列表添加内容:TimeOver小于[今天]
今天开始时将一些内容添加到列表中:Start等于[Today]
添加过去一周创建的内容:开始时间大于[今天] -7
向30天内到期的列表添加内容:TimeOver大于[Today]且TimeOver小于[Today] +30
答案 2 :(得分:0)
以NUMBER格式创建计算列(例如,将其命名为&#39; CreatNum&#39;)。列的值是日期字段(例如=已创建)。然后按该字段过滤,如在CreateNum字段中大于46,885.3313(数字值中的日期)。相同的计算列会将现有日期字段转换为数字,以便您可以轻松判断要过滤的数字值。