2012-07-28 23 views
0

下面的代碼事件是假設從谷歌日曆GoogleAppsScript - 無法從日曆

// The code below will retrieve all the events for the user's default calendar and 
// display the description of the first event 
var cal = CalendarApp.getDefaultCalendar(); 
Logger.log(cal.getName()); 
var events = cal.getEvents(new Date("July 01, 2012 EST"), new Date("July 30, 2012 EST")); 
if (events[0]) { 
    Logger.log(events[0].getDescription()); 
} 
else 
{ 
    Logger.log("No events found"); 
} 

但其只打印「未找到任何活動」獲得七月一個月的事件,

我覈實日曆命名它獲得正確的日曆,雖然沒有得到事件

還有什麼需要驗證?

回答

1

上述代碼出於某種原因在我的Chrome瀏覽器(版本:20.0.1132.57)上出現故障,我嘗試使用Safari並且這次它工作。

0

我試過你的代碼,它按照書面的方式工作。

您是否在未定義用戶並且getDefaultCalendar()無法確定默認日曆的位置運行此操作?

+0

「Logger.log(cal.getName())」,在上面的代碼,是給正確的用戶名 – Arun 2012-07-28 19:32:42

+0

也許請檢查你看實際上是在用戶的事件日曆,而不是在他們創建的另一個日曆中。我可以複製'找不到事件'的唯一方法是在默認日曆中沒有事件。你的代碼看起來不錯。 – Weehooey 2012-07-28 19:51:23

+0

我驗證了事件存在於適當的日曆中,但沒有運氣,是否還有其他東西丟失。我正通過Chrome瀏覽器的https://script.google.com從容器執行腳本 – Arun 2012-07-29 18:32:00

0

方法getDescription()將只獲取事件的描述。所以如果在創建的事件中沒有描述,記錄器將是空的。

試試這個,例如:

function myCalender(){ 

var cal = CalendarApp.getDefaultCalendar(); 
Logger.log(cal.getName()); 
var events = cal.getEvents(new Date("July 01, 2012 EST"), new Date("August 10, 2012 EST")); 

var eventsCount = events.length; 
for (var i = 0; i <= eventsCount -1; i++) { 

var myEvent =events[i]; 

var myDescription = myEvent.getDescription(); 
var myStartTime = myEvent.getDateCreated(); 
var myEndTime = myEvent.getEndTime(); 

Logger.log(myEvent.getDescription(), myEvent.getEndTime()); 

} 

}