Apps Script公式リファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2018年1月18日木曜日

GoogleドライブのファイルIDから親フォルダを取得する


ファイルIDはわかっていてそれがどのフォルダの中にあるかを知りたい


Google ドライブのファイルは複数のフォルダに追加できるので
親フォルダはひとつとは限らない

そのため対象となる親フォルダをすべて取得して
そのURLとフォルダ名を取得したい


以下のコード.gsを実行すると
指定したFILE_IDの親フォルダのURLと名前がログに出ます



コード.gs
function get_parent_folders() {
  var file_id = "FILE_ID";
  var file = DriveApp.getFileById(file_id);
  var parents = file.getParents();
  var result = [];
  while (parents.hasNext()) {
    var parent = parents.next();
    var parent_url = parent.getUrl();
    var parent_name = parent.getName();
    result.push([parent_url, parent_name]);
  }
  Logger.log(result)
}
意訳
この機能がやること
ファイルIDを指定して
Google Drive内のそのファイルを取得して
親フォルダをすべて取得して(ファイルはいくつものフォルダに追加できるので親フォルダはひとつとは限らない)
結果の入れ物を用意して
親フォルダが存在する限り以下を繰り返す
親フォルダをひとつずつ取得して
そのURLを取得して
フォルダ名も取得して
resultに追加する

すべての結果が入ったresultをログに出す



参考

Class File

Latest post

Google Apps Scriptの障害時はIssueTrackerを見てみる - Incidents for Apps Script are reported on Issue Tracker

IssueTracker > Apps Script issues https://issuetracker.google.com/savedsearches/566234 Google Apps Scriptの障害時は IssueTracker に課題が上がっていることが...