0

コレクション内のユーザー指定のフォルダーにドキュメントを保存する作業中のアプリがあります。これは、ルート フォルダーに保存する場合を除き、正常に機能します。

ドキュメントによると、

function testGetRoot() {
  var root = DocsList.getRootFolder();
  var folderName = DocsList.getFolderById(rootid);
  Logger.log("Folder name: " + folderName.getName());
}

folderName は、コレクションのルートの getName として 'Root' を示しています。

そのため、コレクション内の他のフォルダーの名前が入力されている ListBox に「ルート」を追加したことがわかります。もちろん、それはあまりにも簡単でした..

**var collectionFolder =  DocsList.getFolder(selectedCollection)**;

「フォルダ ルートが見つかりません」というエラー メッセージが表示されます。

したがって、ルートの名前を取得できますが、getFolder メソッドで受け入れられるようには見えません。

私は何が欠けていますか?

4

2 に答える 2

3

あなたは何も見逃していません。この問題は問題トラッカーで報告する必要があります。しかし、これが機能したとしてもおそらく使用する代替手段として、常にフォルダーIDを参照しています。例えば

listbox.addItem(folder.getName(), folder.getId());

//then, later on in your handler...
//you'll receive the selected folder id directly, instead of its name.
//allowing you to use the more reliable getFolderById
var selectedFolder = DocsList.getFolderById(e.paramater.listbox);
//which works also for the root folder
于 2012-05-25T20:32:43.433 に答える
0

addtoFolderを使用するロジックに「Root」をハードコーディングして、ユーザーがRootを選択しても、addToFolderメソッドが呼び出されないようにしました。デフォルトの動作では、特に指定がない限り、ドキュメントはルートコレクションに保存されます。

于 2012-05-25T21:34:32.920 に答える