2009-10-03 75 views
1

我正在嘗試獲取給定日期的日曆條目。代碼工作沒有錯誤,但我得到一個錯誤的日曆日期條目。我相信這個公式是正確的,但是如果沒有任何幫助,我會感激不盡。這是代碼。使用Java在Lotus Notes中獲取今天的日曆條目

 long startTime; 
     long endTime; 
     String searchFormula; 
     DocumentCollection dc_CalendarEntries; 

     System.out.println("Getting default TimeZone"); 
     TimeZone calTZ = TimeZone.getDefault(); 
     GregorianCalendar startDay = new GregorianCalendar(calTZ); 
     startDay.set(startDay.get(1), startDay.get(2), startDay.get(5), 0, 0, 0); 
     startTime = startDay.getTime().getTime(); 
     GregorianCalendar endDay = new GregorianCalendar(calTZ); 
     endDay.setTime(startDay.getTime()); 
     endDay.add(5, 1); 
     endTime = endDay.getTime().getTime(); 
     System.out.println("Creating Search Formula"); 

     StringBuffer searchFormulaStringBuffer = new StringBuffer("@IsAvailable(CalendarDateTime)"); 
     searchFormulaStringBuffer.append(" & StartDateTime >= @Date(").append(startDay.get(1)).append("; ").append(startDay.get(2) + 1).append("; ").append(startDay.get(5)).append("; ").append(startDay.get(10)).append("; ").append(startDay.get(12)).append("; ").append(startDay.get(13)).append(")"); 
     searchFormulaStringBuffer.append(" & EndDateTime <= @Date(").append(endDay.get(1)).append("; ").append(endDay.get(2) + 1).append("; ").append(endDay.get(5)).append("; ").append(endDay.get(10)).append("; ").append(endDay.get(12)).append("; ").append(endDay.get(13)).append(")"); 
     searchFormulaStringBuffer.append(" & (AppointmentType = \"3\" | AppointmentType = \"0\")"); 
     searchFormula = searchFormulaStringBuffer.toString();   
     System.out.println(searchFormula); 
     dc_CalendarEntries = db_Mail.search(searchFormula); 

這就是應用的公式。

@IsAvailable(CalendarDateTime) & StartDateTime >= @Date(2009; 10; 3; 0; 0; 0) & EndDateTime <= @Date(2009; 10; 4; 0; 0; 0) & (AppointmentType = "3" | AppointmentType = "0") 

我收到以下條目。

Test Project daily checkpoint 2009-09-08 
This is a Test Meeting 2009-10-03 

第二項是正確的,很好,但由於某種奇怪的原因,第一項不斷彈出不管我給的日期。我不確定它的編碼問題或我的筆記中的某些配置問題。

+0

您可能已經嘗試過,但如果沒有 - 嘗試創建一個視圖,並將選擇公式設置爲上面的公式。這個額外的文檔是否出現? – 2009-10-03 19:47:34

+0

不,我還沒有嘗試過,會嘗試一下並回復給你。 – vikramjb 2009-10-06 06:36:06

回答

2

您需要小心重複日曆條目,因爲這些條目將具有映射到系列的第一個條目的開始和結束日期時間字段值。

+0

這可能是因爲無效條目確實有重複條目。 – vikramjb 2009-10-06 06:35:19

相關問題