2015-06-30 69 views
1

使用谷歌用於在DriveApp語法如下:DriveApp File.makeCopy()不是抄襲文檔主體

var folderVar= DriveApp.getFolderById(corporateFolderId); 
var fileVar= DriveApp.getFileById(fileId); 
fileVar.makeCopy(title, folderVar); 
fileVar.setTrashed(true); 

正如你所看到的,我想最近生成的文件複製從我登錄的用戶驅動到我有權訪問的公司帳戶上的文件夾。然後我從登錄的用戶驅動器中清除文檔。這實際上是執行復制,並且標題正確,但文檔正文爲空。我在文檔創建後執行此操作,因此操作順序很好。日誌記錄顯示,與我登錄的用戶帳戶(但已刪除)相同的文檔文件ID是正在複製的文檔ID,但公司文件夾中的新文檔是空白的。

任何提示非常感謝,謝謝。

+0

嗨賈斯汀,我測試過這個,對我來說它就像一個魅力,所以有幾個問題:你有源文檔/文件夾的編輯權限?源文檔中是否有內容?你要複製什麼樣的文件? – Thomas

+0

是的,我對源文件結構有完全的權限。源文檔確實包含內容(通常爲20多頁),並且是包含大量文本和圖表/圖表的報告文檔。 –

+0

重要的是要注意,在最近更新日落之前的一些API調用之前,我使用DocsList調用來做同樣的事情(除了我正在指示源文件夾馬上保存,它允許你這樣做)。 DriveApp需要使用您登錄的帳戶創建文檔,然後複製它。 –

回答

0

你說你在文件創建後執行腳本,你是否也保存它?

+0

您應該添加一個指向saveAndClose()DocumentApp文檔的鏈接 –

+0

複製在所有方法調用之後立即進行,以便在腳本執行任何包裝之前用內容填充它。難道它不應該簡單地將文檔複製到makeCopy()被調用時的任何狀態? –