2014-03-24 65 views
0

我已經寫了一個腳本來上傳一個HTML格式的谷歌驅動器中的文件。無法更新到我的谷歌腳本的新版本

我的第一個版本是隻與此代碼:

<input type="file" name="theFile"> 
    <input type="hidden" name="anExample"> 
    <input type="button" value="Submit" onclick="google.script.run.serverFunc(this.parentNode)"> 

後來我加了新的組件:

<html> 
<body> 
<form> 
    <label>Responsabile:</label> 
    <select name="resp"> 
    <option value="[email protected]">1</option> 
    <option value="[email protected]">2</option> 
    <option value="[email protected]">3</option> 
    </select> 
    <p>Totale €: <input type="Text" name="tot"></p> 
    <input type="file" name="theFile"> 
    <input type="hidden" name="anExample"> 
    <input type="button" value="Submit" onclick="google.script.run.serverFunc(this.parentNode)"> 
</form> 
</body> 
</html> 

我發表了新的應用程序,但我看不到新的,我繼續看較舊的頁面。 我也嘗試取消發佈該項目並再次發佈......沒有。我繼續看到較舊的頁面...

請有人可以幫助我。

感謝

..............................

code.gs: 
// Script-as-app template. 
function doGet() { 
    return HtmlService.createHtmlOutputFromFile('page.html'); 
} 

function serverFunc(theForm) { 
    var now = new Date(); 
    var datetime = Utilities.formatDate(now, "GMT+1", "yyyy-MM-dd"); 
    var utente = Session.getActiveUser().getEmail(); 
    var utenteorig = utente; 
    utente = utente.replace("@elyspa.it", ""); 
    utente = utente.replace(".", "_"); 
    var prefix = 'NotaSpese-'; 
    var name = prefix + utente + '_' + datetime; 
    var folderName = '01_NoteSpese'; 
    var anExampleText = theForm.anExample; // This is a string 
    var fileBlob = theForm.theFile;   // This is a Blob. 
    var totale = theForm.tot; 
    var resp = theForm.resp; 
    Logger.log(name) 
    fileBlob.setName(name); 
    var approvalsSpreadsheet = SpreadsheetApp.openById("0AmlI-G8XpXeQdDNXYzNtbEQ3YTdQMmQxX1RsYTNaZ0E"); 
    var approvalsSheet = approvalsSpreadsheet.getSheets()[0]; 
    approvalsSheet.appendRow([datetime, utenteorig, totale, resp]); 

    /*var exist = checkFolder(folderName); 
    if(exist){ 
    var folder = DocsList.getFolder(folderName); 
    var adoc = folder.createFile(fileBlob); 
    } 
    else{ 
    var folder = DocsList.createFolder(folderName); 
    var adoc = folder.createFile(fileBlob); 
    }*/ 

    var folder = DocsList.getFolder(folderName); 
    var adoc = folder.createFile(fileBlob); 
    Logger.log(adoc.getUrl()) 
    Logger.log(name) 
    return adoc.getUrl(); 
} 

function checkFolder(folderName){ 
    var exist = true; 
    try{var testFolder = DocsList.getFolder(folderName)} 
    catch(err){exist=false} 
    return exist; 
} 
+0

你能否也請顯示服務器代碼(gs文件)?謝謝。 –

+0

更多信息:如果我打開「.../dev」鏈接一切正常,但如果我打開與「.../exec」共享鏈接,我看到舊代碼... – user3456078

+0

感謝您的代碼。 –

回答

0

你必須保存一個新版本(腳本編輯器中的文件菜單),然後轉到「發佈」,然後從那裏選擇要發佈的正確版本。

此功能的開發使您可以在代碼已經發布且不影響其功能的情況下編寫代碼。人們只能在線發佈穩定版本,並繼續研究「開發」版本。

+0

非常感謝,現在我已經進行了版本控制......現在,我的域中的用戶無法使用腳本(您沒有權限)。我設置了權限:我的組織中的任何人都可以可視化...爲什麼當用戶打開嵌入腳本的頁面時,他會看到要請求授權的頁面? – user3456078

+0

你確定他使用他的域帳號登錄嗎?有時人們使用許多不同的帳戶登錄。也就是說,您不必共享腳本以允許用戶使用該應用程序,但這些是2個完全不同的共享設置。 –

+0

我使用他的賬戶登錄了...此刻我無法再修改項目....我創建了一個新版本並刪除了舊版本,然後我在新版本中發佈了新代碼....但我繼續看到較老的一個...... :( – user3456078