ブロックリファレンス

BLOCKS Reference

Google Drive

Googleドライブのアイテムを削除

概要

このブロックは、Googleドライブ上のアイテム(ファイルやフォルダー)を完全に削除します。削除後の復元は、できません。複数アイテムをまとめて削除もできます。

アイテムが共有されている場合は、そのアイテムのオーナーでなければ削除できません。

info指定されたアイテムが複数存在する場合は、それらすべてが削除されます(ただし、オーナー権限をもつアイテムのみ)。

info既存のGoogleドライブ上のアイテム(Google Driveカテゴリーのブロック以外で作成・保存したアイテム)も対象とする場合は、GCPサービスアカウントのメールアドレスでそのアイテムを共有しておく必要があります。GCPサービスアカウントのメールアドレスは、フローデザイナーの設定のGCPサービスアカウントで確認できます。

warningセルフサービスプランの場合は、このブロックを使用する前に、Google Drive APIを有効にしてください。詳しくは、「基本操作ガイド>ヒント> Google APIを有効にする」を参照してください。

プロパティ

プロパティ名 説明
ブロック名

編集パネルに配置した当該ブロックの表示名が変更できます。

ブロックリストパネル中のブロック名は変更されません。

GCPサービスアカウント このブロックで使用するGCPサービスアカウントを選択します。
アイテムURL(名前可)

削除するアイテムのURLを指定します。URLは、共有リンクおよびファイルのURL(ウェブブラウザーのアドレス欄に表示)のどちらも指定できます。

アイテム名の指定もできます。

複数のアイテムを削除する場合は、削除したいアイテム(URLもしくはアイテム名)のリストを配列形式変数に格納し、その変数を変数展開の形式(${foobar})で指定します。

infoGoogleドライブのアイテムを検索」ブロックの「結果を格納する変数」プロパティへの出力結果は、アイテムのリストが配列形式で格納されています。このため、削除したいアイテムをこのブロックで検索し、その結果を指定することで簡単に複数アイテムの削除が実現できます。ただし、検索結果は「ファイルURL」のみとする必要があります。詳しくは、使用例を参照願います。

ブロックメモ このブロックに関するメモが記載できます。このブロックの処理に影響しません。

使用例

ここでは、「Googleドライブのアイテムを検索」ブロックと組み合わせて複数アイテムを削除する例を紹介します。

この例で作成するフローのおおまかな流れは、以下のとおりです。

  1. 「Googleドライブのアイテムを検索」ブロックを使って、削除対象のアイテムをリストアップ
  2. リストアップした削除対象のアイテムを「Googleドライブのアイテムを削除」ブロックで削除

以下、上記順序に沿って、解説します。

まず、「Googleドライブのアイテムを検索」ブロックを使って、削除対象のアイテムをリストアップします。

リストアップした内容は、「結果を格納する変数」プロパティを使って変数に格納します。ここでは、変数「delete_item_list」に格納しています。

warningリストアップした内容がファイルURLのみとなるように、「変数に含める情報」プロパティは、「ファイルURL」のみチェックをオンにしてください。

続いて、リストアップした削除対象のアイテムを「Googleドライブのアイテムを削除」ブロックを使って削除します。

アイテムURL(名前可)」プロパティに、削除対象アイテムのリストアップ内容が格納された変数を変数展開で指定します。ここでは、「${delete_item_list}」と指定しています。

最後に、フローをつなげて完成です。

なお、「Googleドライブのアイテムを検索」ブロックでは、前方一致による検索のため、希望に沿った検索結果とならない可能性があります。

このような場合は、「Googleドライブのアイテムを検索」ブロックによる検索結果を一旦BigQueryテーブルに格納し、SQLクエリーを使ってさらに絞り込むことで、希望に沿った絞り込みが実現できます。

この例で作成するフローのおおまかな流れは、以下のとおりです。

  1. 「Googleドライブのアイテムを検索」ブロックを使って、削除対象のアイテムをリストアップ
  2. リストアップ結果を「変数からテーブルへロード」ブロックを使って、一旦BigQueryテーブルに格納
  3. 「クエリーの実行」ブロックを使って、削除対象のアイテムを再リストアップ
  4. リストアップした削除対象のアイテムを「Googleドライブのアイテムを削除」ブロックで削除

以下、上記順序に沿って、解説します。

まず、「Googleドライブのアイテムを検索」ブロックを使って、削除対象のアイテムをリストアップします。

リストアップした内容は、「結果を格納する変数」プロパティを使って変数に格納します。ここでは、変数「delete_item_list」に格納しています。

warning後でSQLクエリーを使って削除対象のアイテムを絞り込むため、先ほどとは違ってここではリストアップした内容にファイル名を含めます。「変数に含める情報」プロパティは、「ファイルURL」と「ファイル名」両方のチェックをオンにしてください。

続いて、リストアップ結果を「変数からテーブルへロード」ブロックを使って、一旦BigQueryテーブルに格納します。

続いて、「クエリーの実行」ブロックを使って、削除対象のアイテムを再リストアップします。

この例では、以下のクエリーを指定して、「サンプル」という文字列を含むファイル名をリストアップしています(LIKE句を使った部分一致)。

SELECT
  ARRAY(
    SELECT
      url
    FROM
      example.delete_item_list
    WHERE
      name LIKE '%サンプル%') AS url

info実際の利用にあたっては、ARRAY関数内のデータセット・テーブル・WHERE句などをご自身の目的や環境に合わせて読み替えてください。

このリストアップ結果は、オブジェクト配列形式で変数に格納されます。

続いて、リストアップした削除対象のアイテムを「Googleドライブのアイテムを削除」ブロックで削除します。

アイテムURL(名前可)」プロパティに、削除対象アイテムのリストアップ内容が格納された変数を変数展開で指定します。ここでは、「${delete_item_list.0.url}」と指定しています。

最後に、フローをつなげて完成です。

この情報は役に立ちましたか?