2012-05-04 76 views
1

我試圖使用Tasks API將任務的狀態設置爲已完成。它顯示代碼已成功完成,但該任務未被標記爲已完成。 此外,當我嘗試在更新後獲取任務的狀態時,它將狀態顯示爲「needsAction」。 這是我的代碼使用Google Apps腳本的任務API(完成任務)

function setTaskStatus(){ 
    // Suppose a task with name "MyTaskListName" is contained 
    //within task list with name "MyTaskName" 

    var tasklist = Tasks.Tasklists.list().getItems(); 
    var title = 'MyTaskListName'; 
    var id; 
    for(var i in tasklist){ 
    if(title == tasklist[i].getTitle()){ 
     id = tasklist[i].getId(); 
    } 
    } 

    //Get the task list items 
    var tasks = Tasks.Tasks.list(id).getItems(); 
    for(var i in tasks){ 
    if(tasks[i].getTitle() == 'MyTaskName'){ 
     tasks[i].setStatus("completed");// set status completed 
     Logger.log(tasks[i].getStatus());// this shows that the task has completed 
     //But it does not reflect actually 
    } 
    } 
} 
+0

我已經運行了您的代碼,並且任務已成功標記爲「已完成」。你能否確保你沒有混淆Task和TaskList的名字。 (通過你在函數頂部的內嵌評論來判斷,你實際上是在混合兩個) –

+0

我到目前爲止沒有看到你的評論... 評論是混合的,但代碼是正確的;) 而不是爲我工作 – Cartman

+0

不適用於我:-( – pinoyyid

回答

0

我需要添加行

Tasks.Tasks.update(任務[I],tasklistId,任務[I] .getId());