Googleドライブにメールの内容を書き込み、添付ファイルをアップロードしたい
キーワード:クラウド,GoogleApps,Google,スプレッドシート,Google Drive,メール
概要
Googleスプレッドシートに受信したメールの内容を書き込み、Googleドライブにメールの添付ファイルをアップロードしたい場合、GoogleスプレッドシートアダプタおよびGoogleドライブアダプタを使用します。サンプルプロジェクトの説明
メールを受信し、メールの内容をGoogleスプレッドシートに書き込み、メールの添付ファイルをGoogleドライブにアップロードします。
処理の流れ
サンプルプロジェクトの処理の流れは以下の通りです。- 「メール受信処理」でメールを受信します。
- 「マッピング処理」で「書き込み処理」のスキーマにマッピングします。
- 「書き込み処理」で入力データをGoogleドライブ上のスプレッドシートに書き込みます。
- 「ファイル名一覧取得処理」で受信した添付ファイルの一覧を取得します。
- 「繰り返し(データ件数)処理」で受信した添付ファイル数分、以下の処理を繰り返します。
- 「マッピング処理」で受信した添付ファイルのディレクトリ名をスクリプト変数に代入します。
- 「ファイル/フォルダ書き込み処理」で添付ファイル(zipファイル)をGoogleドライブにアップロードします。

ポイントとなる機能
名前 | 説明 | ツールパレット上の場所 |
---|---|---|
メール受信(IMAP4)処理 | IMAP4サーバからメールを受信します。 | 「ネットワーク」-「メール」-「メール受信(IMAP4)」 |
書き込み処理 | 入力データをGoogleドライブ上のスプレッドシートに書き込みます。 | 「クラウド」-「Googleスプレッドシート」-「書き込み」 |
ファイル/フォルダ書き込み処理 | DataSpiderファイルシステム上にあるファイル/フォルダを、Googleドライブ上に書き込みます。 | 「クラウド」-「Googleドライブ」-「ファイル/フォルダ書き込み」 |
処理のポイント
GoogleスプレッドシートおよびGoogleドライブには、それぞれ専用のアダプタであるGoogleスプレッドシートアダプタおよびGoogleドライブアダプタを使用して接続します。サンプルプロジェクトの使用方法
上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。サンプルプロジェクトのダウンロード | 逆引きリファレンス シナリオ085のサンプルプロジェクト |
---|
- サンプルプロジェクトの展開
サンプルプロジェクトファイル「rl_reference_085.zip」を展開します。 - プロジェクトのアップロード
「rl_reference_085.zip」を展開後に作成される「rl_reference_085プロジェクト」ディレクトリがプロジェクトファイルとなります。
DataSpider Studioを起動し、マイプロジェクトの画面から[ファイル]-[ローカルからアップロード]で展開したディレクトリ「rl_reference_085プロジェクト」をアップロードしてください。 - サンプルデータの準備
「rl_reference_085.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
$DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。 - グローバルリソース(メール受信サーバ接続設定)の設定
コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、メール受信サーバ接続設定のグローバルリソースを追加します。
グローバルリソース(メール受信サーバ接続設定)の設定方法については、DataSpider Servistaヘルプの「グローバルリソースのプロパティ」を参照してください。
- グローバルリソース(Googleスプレッドシート)の設定
コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Googleスプレッドシートのグローバルリソースを追加します。
グローバルリソース(Googleスプレッドシート)の設定方法については、DataSpider Servistaヘルプの「グローバルリソースのプロパティ」を参照してください。
- グローバルリソース(Googleドライブ)の設定
コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Googleドライブのグローバルリソースを追加します。
グローバルリソース(Googleドライブ)の設定方法については、DataSpider Servistaヘルプの「グローバルリソースのプロパティ」を参照してください。
スクリプトの作成手順

- 添付ファイルのディレクトリ名をセットするため、スクリプト変数を作成します。
- スクリプト変数のプロパティは、以下のように設定します。
スクリプト変数のプロパティ
変数名 変数型 初期値 ディレクトリ名 文字列
- スクリプト変数のプロパティは、以下のように設定します。
- デザイナのツールパレット「ネットワーク」-「メール」-「メール受信(IMAP4)」から、メール受信(IMAP4)処理をスクリプトキャンバスに配置します。
- メール受信(IMAP4)処理の設定は、以下のように行います。
[必須設定]タブ
[添付ファイル]タブ
- メール受信(IMAP4)処理の設定は、以下のように行います。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「クラウド」-「Googleスプレッドシート」-「書き込み」から、書き込み処理をスクリプトキャンバスに配置します。
- 書き込み処理の設定は、以下のように行います。
[必須設定]タブ
- 書き込み処理の設定は、以下のように行います。
- マッピング処理(「mapping」)のMapperエディタを開き、書き込み処理のスキーマにマッピングする処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
番号 ロジック名 説明 ツールパレット上の場所 (1) 単純な繰り返し 指定したノードを繰り返します。 「繰り返し」-「基本」-「単純な繰り返し」
- マッピングキャンバスは、以下のように設定します。
- デザイナのツールパレット「ファイル」-「ファイル操作」-「ファイル名一覧取得」から、ファイル名一覧取得処理をスクリプトキャンバスに配置します。
- ファイル名一覧取得処理の設定は、以下のように行います。
[必須設定]タブ
- ファイル名一覧取得処理の設定は、以下のように行います。
- デザイナのツールパレット「基本」-「フロー」-「繰り返し(データ件数)」から、繰り返し(データ件数)処理をスクリプトキャンバスに配置します。
- 繰り返し(データ件数)処理の設定は、以下のように行います。
[必須設定]タブ
- 繰り返し(データ件数)処理の設定は、以下のように行います。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。
- マッピング処理(「mapping(1)」)のMapperエディタを開き、受信した添付ファイルのディレクトリ名をスクリプト変数に代入する処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
- マッピングキャンバスは、以下のように設定します。
- デザイナのツールパレット「クラウド」-「Googleドライブ」-「ファイル/フォルダ書き込み」から、ファイル/フォルダ書き込み処理をスクリプトキャンバスに配置します。
- ファイル/フォルダ書き込み処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
- ファイル/ディレクトリ名にはワイルドカード(「*」および「?」)が使用できます。
ワイルドカード「*」を使用することで拡張子「.zip」のファイルすべてを処理対象とします。 - [ローカルディレクトリ]および[フォルダパス]にスクリプト変数を使用することで、スクリプトを改修せずに動的に設定値を変更することができます。
スクリプト変数は、以下の方法で素早く入力できます。- 入力フィールドにフォーカスをあてて表示させる変数入力アシスタント機能から選択します。
- 入力フィールドの右クリックメニューで[スクリプト変数]を選択します。
- ファイル/ディレクトリ名にはワイルドカード(「*」および「?」)が使用できます。
- ファイル/フォルダ書き込み処理の設定は、以下のように行います。
- スクリプトを実行し、正常終了すれば成功です。