簡體   English   中英

SharePoint Pnp PowerShell日期查詢

[英]SharePoint Pnp PowerShell date query

我正在使用SharePoint Online,並希望使用PnP PowerShell構建查詢,以檢查日期字段Aviseringsdatum中的任何日期是否等於今天的日期。 但是我的代碼仍然返回所有項目(當前列表中有2個項目。一個項目帶有今天的日期,另一個項目帶有昨天的日期)。 有任何想法嗎?

編碼

 $Today = (Get-date).ToString( "yyyy-MM-ddTHH:mm:ss.fffffffZ" )
    $ListItems = Get-PnPListItem -List "Avtal" -Query "
        <Query>
           <Where>
              <eq>
                 <FieldRef Name='Aviseringsdatum' />
                 <Value IncludeTimeValue='TRUE' Type='DateTime'>$Today</Value>
              </eq>
           </Where>
        </Query>
        <ViewFields>
           <FieldRef Name='Title' />
           <FieldRef Name='Aviseringsdatum' />
           <FieldRef Name='Avtalsansvarig' />
        </ViewFields>
        <QueryOptions />
        ";

您缺少CAML查詢中的<View>屬性。

PnP PowerShell在內部使用CSOM。

要查詢CSOM中的列表項,您需要<View>屬性。

因此,如下修改您的代碼:

$Today = (Get-date).ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ")

$camlQuery = $("<View>
        <Query>
           <Where>
              <Eq>
                 <FieldRef Name='Aviseringsdatum' />
                 <Value IncludeTimeValue='TRUE' Type='DateTime'>$Today</Value>
              </Eq>
           </Where>
        </Query>
        <ViewFields>
           <FieldRef Name='Title' />
           <FieldRef Name='Aviseringsdatum' />
           <FieldRef Name='Avtalsansvarig' />
        </ViewFields>
    </View>")

$ListItems = Get-PnPListItem -List "Avtal" -Query $camlQuery

您也可以替換行以使用現成的<Today/>元素,如下所示:

<Value IncludeTimeValue='TRUE' Type='DateTime'><Today /></Value>

因此,您的完整代碼如下所示:

$camlQuery = $("<View>
            <Query>
               <Where>
                  <Eq>
                     <FieldRef Name='Aviseringsdatum' />
                     <Value IncludeTimeValue='TRUE' Type='DateTime'><Today /></Value>
                  </Eq>
               </Where>
            </Query>
            <ViewFields>
               <FieldRef Name='Title' />
               <FieldRef Name='Aviseringsdatum' />
               <FieldRef Name='Avtalsansvarig' />
            </ViewFields>
        </View>")

$ListItems = Get-PnPListItem -List "Avtal" -Query $camlQuery

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM