2009-06-19 139 views
2

我想要一個CAML查詢來獲取日曆列表中的事件。CAML查詢

我想在即將到來的30天左右獲取包括今日在內的所有活動。

到目前爲止,我有:

<Where> 
    <DateRangesOverlap> 
    <Geq> 
     <FieldRef Name=\"EventDate\" /> 
     <Value Type=\"DateTime\"> 
     <Today /> 
     </Value> 
    </Geq> 
    <FieldRef Name=\"EndDate\" /> 
    <FieldRef Name=\"RecurrenceID\" /> 
    <Value Type=\"DateTime\"> 
     <Month /> 
    </Value> 
    </DateRangesOverlap> 
</Where> 

這不工作:(任何想法

+0

當你說它不起作用時,它怎麼不起作用?你也可以粘貼代碼進行查詢嗎? – 2009-06-20 10:08:28

回答

1

復發實際上並不添加所有的事件進入榜單,但CAML只能從「查詢?存儲在列表中實際的」事件。

3

正如納特說你提示(但不指定),您使用的是經常性的活動在您的日曆列表,所以我假設是的工作不是?

部分

您需要在運行CAML查詢之前設置SPQuery.ExpandRecurrancesSPQuery.CalendarDate屬性,並且只能使用對象模型而不是Web服務或通過在CAML中設置屬性來執行此操作。

此外 - IIRC這隻會擴大發生在與.CalendarDate相同的日曆月的週期性事件的實例,因此您必須多次運行它才能獲得多個月的視圖。

這是迄今爲止我所發現的經常性事件的最佳參考。

歡迎經常在SharePoint事件的噩夢!