2014-07-07 161 views
1

我正在爲我公司編寫一個腳本,它將自動在我自己的驅動器中創建一個文件的副本,然後將副本的所有權從電子表格轉移到用戶列表。該腳本完全可以工作,除了該文件在用戶的「所有文件」中創建並且不會顯示在他們的「我的驅動器」中! 轉讓所有權並不是我遇到的問題,問題在於傳輸文件在新所有者的雲端硬盤中的位置。使用Google腳本將共享文件移動到我的雲端硬盤?

我試着將它發送到他們的根文件夾,但那並沒有工作,我不知道爲什麼?它會將它發送給我的雲端硬盤,但它會被複制到已經在我的雲端硬盤中的文件夾中(因爲我已經從我驅動器中的文件夾中的一個文件中複製文件),但對列表中的其他人該文件是新共享並傳輸到,將其移動到根目錄什麼也不做,它仍然在文件沒有任何標籤的所有文件。

有沒有人有一個想法如何自動移動它?

這裏是我一直在使用,對於我自己我的雲端硬盤的工作原理,但沒有其他人的名單上的代碼:

//Take new file out of parent folders 
    var folders = newDoc.getParents();     //get parents 
    for (var j = 0; i < folders.length; i++){    //loop through & delete parents 
    DocsList.getFileById(newDocId).removeFromFolder(folders[i]); //using DocsList 
    } 

    var root = DocsList.getRootFolder(); //Get root 

    DocsList.getFileById(newDocId).addToFolder(root); //add to my drive 

編輯:我被告知,將所有權轉移應該自動把它放進我的雲端硬盤文件但沒有發生?

編輯2:我一直在使用「addFile()」應該將它添加到我的雲端硬盤文件夾中的用戶文件夾試過了,但它只是將其添加到我的人的驅動器中運行腳本,其餘的用戶仍然只能在他們的「所有項目」文件夾中獲取它。這是推動我堅果,有人請幫忙; C

+1

這不是一個問題,設置所有者已經正常工作,但將其移入所有項目而不是我的雲端硬盤,但我需要項目位於「我的雲端硬盤」中,並將其添加到根目錄或「我的雲端硬盤」文件夾不起作用 – Maribov

+0

是否可能有一種方法可以指定將文件傳輸到哪個用戶的根文件夾? – Maribov

+0

或者也許有辦法找到用戶的我的雲端硬盤文件夾的ID? – Maribov

回答

0

所以經過幾天的駕駛自己INSANE和四處詢問,我可以想到我們終於聽到這是一個新的谷歌驅動器用戶界面推出的影響,所以顯然現在它就像現在這樣,直到谷歌修復它:C

什麼是不合意的結局。

0

不幸的是,它不可能完全按照你描述的方式。

正如您發現的,文件所有權可以更改。這是因爲您擁有該文件,並且該文件可通過您授予您雲端硬盤帳戶的授權通過腳本訪問。

將文件放置到不同用戶的驅動器上的某個位置是不可能的,因爲該腳本沒有權限在它不知道的驅動器上設置位置。

但是,可以通過在每個用戶帳戶下運行腳本來設置位置,但顯然這對設置和維護有點艱鉅。

另一種選擇:如果您使用GAM(Google Apps Manager),則可以跨帳戶進行更改。這是因爲GAM在管理員用戶訪問下運行。來自GAM網站的示例:

本示例更新了「我的Ramblings」文件以加星標,並將其置於名爲「我說過的很棒的東西」的文件夾下(假定該用戶名已存在一個文件夾)

gam user [email protected] update drivefile drivefilename "My Ramblings" starred true parentname 'Brilliant things I've said' 
相關問題