web-dev-qa-db-ja.com

SharePointリストビューで[今日]と時刻でフィルタリングするにはどうすればよいですか?

日付と時刻に基づいてSharepointリストをフィルタリングしようとしています。ただし、日付でのみ機能し、データと時間フィールドの時間を無視します。

enter image description here

6
Tabares

SharePoint Designerで、詳細モードのビューからCAMLクエリを編集します。そして、CAMLタグにIncludeTimeValue = "True"を追加しますValue Type = "DateTime"。結果を時間でフィルタリングしています。

           <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>
9
Tabares

まず、[Today]ワイルドカードを使用したSharePointフィルタリングでは、時刻ではなく日付のみが比較されます。私の知る限り、時間を比較するWebインターフェイスの方法はありません。

「TimeOver」がプロジェクトの締め切りであり、「Start」がプロジェクトの開始時であると仮定します...

期限が過ぎたら、次のように言ってリストに何かを追加します。TimeOverは[今日]未満です

今日開始されたときにリストに何かを追加します。開始は[今日]と同じです。

先週作成されたものを追加してください:開始が[今日] -7より大きい

30日以内に期限が切れるリストに何かを追加します。TimeOverが[Today]より大きく、TimeOverが[Today] +30より小さい

3
user2366153

NUMBER形式で計算列を作成します(たとえば、「CreatNum」と呼びます)。列の値は日付フィールドです(例:= Created)。次に、CreateNumフィールドが46,885.3313(数値の日付)より大きいため、そのフィールドでフィルタリングします。同じ計算列が既存の日付フィールドを数値に変換するため、フィルタリングする数値を簡単に判断できます。

0
chillin