Red Hat Training
A Red Hat training course is available for Red Hat Fuse
第8章 Google アプリケーションへの接続
インテグレーションは、Google アプリケーションである Gmail、Google カレンダー、および Google スプレッドシートに接続できます。以下を参照してください。
8.1. Fuse Online を Google クライアントアプリケーションとして登録
インテグレーションで Gmail、Google カレンダー、または Google スプレッドシートへの接続を可能にするには、Fuse Online 環境を Google クライアントアプリケーションとして登録する必要があります。登録中に、Google API を有効にします。さらに、有効にした Google API へアクセスするために Fuse Online が使用するクレデンシャルも作成します。
登録を完了すると、Gmail、Google カレンダー、および Google スプレッドシートへのコネクションを複数作成することができます。各コネクションを複数のインテグレーションで使用することができます。Google アプリケーションへの各コネクションは、登録中に取得する同じ Google クライアント ID と Google クライアントシークレットを使用できますが、各コネクションはユーザーが選択する別の Google アカウントにアクセスすることもできます。
この手順では、Gmail API、Google Calendar API、および Google Sheet API を有効にしますが、3 つの API すべてではなく必要な API のみを有効にすることができます。ただし、3 つすべての API ではなく、必要な API のみを有効にします。API を有効にしなかったアプリケーションへのコネクションを後で作成する必要がある場合は、この手順にしたがって API を有効にすることができます。
Fuse Online 用の新しい Google クライアントアプリケーションを作成する必要があります。Google が新しいクライアントアプリケーションに提供するクレデンシャルには、期限切れのアクセストークンを更新するために使用される更新トークンが含まれています。この更新トークンは、Fuse Online クライアントアプリケーションがクレデンシャルを初めて使用する場合のみ使用できます。Fuse Online では、Gmail、Google カレンダー、および Google スプレッドシートへのコネクションはすべて同じ Google クライアント ID および Google クライアントシークレットを使用することができます。この場合、更新トークンは Google アプリケーションへのすべてのコネクションに対して使用できます。Fuse Online ユーザーインターフェースでコネクションの詳細を表示するときに、Validate ボタンをクリックしないでください。検証はクレデンシャルを 2 回目に使用することになり、更新トークンはクライアントクレデンシャルの一部ではなくなります。ただし、Google アプリケーションに再接続することはできます。
開発環境で、Fuse Online ではない他の OAuth クライアントで使用している Google クライアント ID および Google クライアントシークレットを使用する場合は注意してください。Fuse Online はオフラインのアクセスを必要とし、そのアクセスは最初の OAuth の交換で要求されます。他の OAuth クライアントがすでに OAuth の交換を行い、オフラインのアクセスを要求しなかった場合、Fuse Online は後続の OAuth の交換でオフラインのアクセスを取得することはできません。最初の交換でオフラインアクセスの要求があったことを確認できない場合は、Fuse Online の新しい Google クライアントアプリケーションを作成してください。
前提条件
- Fuse Online を Google クライアントアプリケーションとして登録するために使用する Google アカウントにログインできる必要があります。
手順
Fuse Online で以下を行います。
- 左側のナビゲーションパネルで Settings をクリックします。
-
Settings ページで、上部付近にあるコールバック URL の右側で
をクリックし、Fuse Online 環境のコールバック URL をクリップボードにコピーします。この手順の後半でこの URL が必要になります。
別のブラウザータブで
https://console.developers.google.comにアクセスし、以下を行います。Fuse Online を Google クライアントアプリケーションとして登録するために使用する Google アカウントにログインしていることを確認します。または、別の Google アカウントを選択し、そのアカウントにログインします。
Google API のページの上部に現在の Google プロジェクトの名前が表示されます。
- 現在のプロジェクトを使用して、Fuse Online へ承認を付与するには、次のステップに進みます。別の Google プロジェクトで Fuse Online へ承認を付与するには、そのプロジェクトを選択または作成します。Google アカウントに既存のプロジェクトがない場合は、作成する必要があります。
Google API を有効にします。
-
左上隅の
をクリックし、APIs and Services > Library と選択します。
- 必要な場合は下方向にスクロールし、G Suite 行のカードを確認します。
- Google Calendar API カードをクリックすると、Google Calendar API が有効になっていることを示すページが表示されます。
- 下方向にスクロールして Gmail API カードをクリックすると、Gmail API が有効になっていることを示すページが表示されます。
-
左上隅の
をクリックし、APIs and Services > Library と選択します。
- 必要な場合は下方向にスクロールし、G Suite 行のカードを確認します。
- Google Sheets API カードをクリックすると、Google Sheets API が有効になっていることを示すページが表示されます。
-
左上隅の
クライアントアプリケーションに名前を付けます。
- MANAGE をクリックします。
- 表示されるページの左側のナビゲーションパネルで Credentials をクリックします。右側にある Credentials in APIs & Services をクリックします。
- OAuth consent screen タブをクリックします。
-
表示されるページの Application Name フィールドに Fuse Online クライアントアプリケーションの名前を入力します。たとえば、
Fuse Online client applicationを入力します。 - 他のフィールドは無視します。
- Save をクリックします。
以下のようにクライアントアプリケーションのクレデンシャルを取得します。
- Create Credentials の右側の下矢印をクリックしてメニューを表示し、OAuth client ID を選択します。
- 表示されるページで Web application を選択し、その他のコンテンツを表示します。
-
Name フィールドに、Fuse Online 環境の OAuth クライアント ID の名前を入力します。これは、クライアントアプリケーション自体に入力した名前とは異なります。たとえば、
OAuth client ID for Fuse Onlineを入力します。 - Authorized JavaScript origins は無視します。
- この手順の最初で Fuse Online 環境からコピーしたコールバック URL を Authorized redirect URIs フィールドに貼り付けます。
- Create をクリックして、Fuse Online 環境のクライアント ID とシークレットを表示します。
-
クライアント ID フィールドの右側で
をクリックし、クライアント ID をクリップボードにコピーします。
Fuse Online Settings ページに戻り、以下を行います。
- Gmail、Google カレンダー、および Google スプレッドシートのエントリーを展開します。
- 各 Google アプリケーションの Client ID フィールドに、コピーした Google クライアント ID を貼り付けます。
-
Google の開発者サイトに戻り、クライアントシークレットフィールドの右側で
をクリックし、クライアントシークレットをクリップボードにコピーします。
Fuse Online Settings ページに戻り、各 Google アプリケーションのエントリーで以下を行います。
- コピーした Google クライアントシークレットを Client Secret フィールドに貼り付けます。
- Save をクリックします。Registration Successful! という通知が表示されるはずです。
- Ok をクリックしてエントリーを折りたたみます。
結果
有効にした各 Google アプリケーション API に対して、そのアプリケーションへのコネクションを作成できます。
Fuse Online から Google アプリケーションへのすべてのコネクションは、同じ Google クライアント ID と Google クライアントシークレットを使用します。
Google アプリケーションへのコネクションを持つインテグレーションが継続的に正しく動作するようにするため、Google クライアント ID と Google クライアントシークレットにはトークン更新情報が含まれます。そのため、新しいクレデンシャルを取得 しないでください。新しいクレデンシャルを取得すると、各 Google コネクションを再作成し、以前のコネクションを新しいコネクションに置き換え、Google コネクションを使用する各インテグレーションを再パブリッシュする必要があります。
8.2. Gmail への接続
特定の Gmail アカウントがメールを受け取ったときにインテグレーションの実行をトリガーするには、Gmail コネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。インテグレーションで特定の Gmail アカウントからメールを送信するには、以下のいずれかを行います。
- Gmail コネクションをフローの途中に追加します。
- Gmail コネクションを追加して、シンプルなインテグレーションを完了します。
インテグレーションで Gmail に接続するための一般的なステップは次のとおりです。
- Fuse Online を Google クライアントアプリケーションとして登録します。
- Gmail コネクションを作成します。これには、コネクションがアクセスを許可される Gmail アカウントを選択します。
- インテグレーションが Gmail アカウントからメールを送信する場合は、送信メールの内容を入力する方法を決定します。
- インテグレーションフローに Gmail コネクションを追加します。
- メールを送信する Gmail コネクションでは、任意でインテグレーションデータを電子メールフィールドにマップします。
情報や手順は以下を参照してください。
8.2.1. Gmail コネクションの作成
Gmail コネクションを作成する場合、特定の 1 つの Gmail アカウントにアクセスできるようにコネクションを許可する必要があります。Gmail コネクションの作成後、複数のインテグレーションを追加することができます。
前提条件
- Fuse Online が Google クライアントアプリケーションとして登録 され、Gmail API が有効になっている必要があります。
- Gmail の Fuse Online Settings ページエントリーには、Fuse Online を Google クライアントアプリケーションとして登録して取得したクライアント ID とクライアントシークレットの値があります。
手順
- Fuse Online の左パネルで Connections をクリックし、利用可能なコネクションを表示します。
- 右上の Create Connection をクリックし、利用可能なコネクターを表示します。コネクターは、1 つ以上のコネクションを作成するために使用するテンプレートです。
- Gmail コネクターをクリックします。
Configure Connection ページで Connect Gmail をクリックします。Sign in with Gmail ページが表示されます。
Connect Gmail が表示されない場合、Fuse Online 環境は Google クライアントアプリケーションとして登録されていません。「Fuse Online を Google クライアントアプリケーションとして登録」を参照してください。Fuse Online 環境が Google クライアントアプリケーションとして登録されていない状態で Gmail コネクションを作成しようとすると、Fuse Online に承認情報の入力を要求する複数のフィールドが表示されます。これらのフィールドに値を入力して Gmail コネクションを作成することは可能ですが、推奨されません。
- Google へのログインを要求するページで、このコネクションが Fuse Online からアクセスする Google アカウントのメールアドレスを入力し、Next をクリックします。
- openshiftapps.com wants to access your Google Account に対して Allow をクリックし、Fuse Online に戻ります。
-
Fuse Online の Connection Name フィールドに、このコネクションを別のコネクションと区別するために使用する名前を入力します。たとえば、
Gmail Connect 1を入力します。 -
Description は任意のフィールドで、このコネクションに関する便利な情報を入力します。たとえば、
Sample Gmail connection that uses jkim Gmail account credentials.を入力します。 - 右上にある Create をクリックし、作成したコネクションが利用可能になったことを確認します。上記の例の名前を入力した場合は、インテグレーションに追加できるコネクションとして Gmail Connect 1 が表示されます。
8.2.2. 送信メールの代替の作成方法
シンプルなインテグレーションを完了する Gmail コネクションや、フローの途中にある Gmail コネクションは、アクセスが許可されている Gmail アカウントからメールを送信します。Gmail コネクションが送信するメールの内容を入力する方法は複数あります。メールを送信する Gmail を追加する前に、メールの内容を入力する方法を検討してください。
送信メールの内容を入力する代替方法は次のとおりです。
メールを送信する Gmail コネクションの直前にデータマッパーステップを追加します。このデータマッパーステップでは、以前のステップから出力されたデータフィールドを Gmail コネクションの Send Email アクションフィールドにマップします。Send Email アクションフィールドは次のとおりです。
- Email to
- Email subject
- Email text
- Email cc
- Email bcc
データマッパーステップを追加した場合、Send Email アクションフィールドを 1 つ、一部、またはすべてマップできます。
- Gmail コネクションをフローに追加するとき、Send Email アクションフィールドに値を指定してアクションを設定します。値は 1 つ、一部、またはすべてのフィールドに指定できます。
データマッパーステップと Send Email アクション設定を両方使用して、フィールドに値を入力します。つまり、1 つ以上のフィールドを指定して Send Email アクションを設定でき、その他のフィールドに値を入力するデータマッパーステップを追加することもできます。
Send Email アクションフィールドに直接指定する値は、Send Email アクションフィールドにマップされる値よりも優先されます。つまり、コネクションの追加時およびアクションの設定時に値を指定して Send Email フィールドに値を入力し、さらに同じフィールドに値をマッピングした場合に、アクション設定で指定した値は常にマップされた値よりも優先されます。たとえば、Email to アクションフィールドに
people@redhat.comを指定し、前のステップのメールフィールドも Gmail の Email to フィールドにマップする場合、インテグレーションは常にpeople@redhat.comをメールアドレスとして使用します。
メールを送信する Gmail コネクションを追加するとき、すべてのアクション設定パラメーターは任意となります。これは、インテグレーションデータを Send Email アクションフィールドにマップして、メールの内容を完全に入力することを選択する場合があるからです。しかし、アクション設定での指定またはマッピングのいずれかを行って、Email to フィールドにメールアドレスが存在する必要があります。メッセージ送信先のメールアドレスがないと、Fuse Online はランタイムエラーを生成し、インテグレーションの実行が停止します。
8.2.3. ポーリングによる Gmail メッセージの返信時にインテグレーションをトリガー
特定の Gmail アカウントが受信したメールを基にインテグレーションを実行するには、Gmail コネクションをシンプルなインテグレーションの最初のコネクションとして追加します。インテグレーションの実行時、Gmail コネクションはユーザーが制御する間隔毎に、このアカウントでメールをチェックします。コネクションが未読のメールを見つけると、そのメールをインテグレーションの次のステップに渡し、デフォルトではメールに read (既読) マークを付けます。
前提条件
- メールを取得する Gmail アカウントへのアクセスが許可される Gmail コネクションが作成されている必要があります。
手順
- Fuse Online パネルの左側にある Integrations をクリックします。
- Create Integration をクリックします。
- Choose a Start Connection ページで、インテグレーションを開始するために使用する Gmail コネクションをクリックします。
- Choose an Action ページで Receive Email アクションをクリックします。
Receive Email アクションを設定します。
- Delay フィールドには、デフォルトの 30 秒を使用するか、インテグレーションが新規メールをチェックする頻度を指定します。
- 未読のメールをすべて取得する場合は Labels フィールドを空白のままにしておきます。特定のメールのみを取得する場合は、コネクションがアクセスしている Gmail アカウントで使用されるラベルのコンマ区切りリストを指定します。デフォルトでは、インテグレーションはこれらのラベルが付けられた未読のメールを取得します。
- コネクションが同じメールを 2 度返さないようにするため、Mark as read を選択します。Mark as read を選択しないと、メールが未読または既読であるかに関わらず、コネクションはアカウントの受信トレイにあるメールを返します。1 つ以上のラベルを指定した場合は、メールが未読または既読であるかに関わらず、指定したラベルが付けられたメールを返します。
Max Results フィールドには、デフォルトの 5 を使用するか、各ポーリングに対してコネクションが返すことができるメールの最大数を指定します。コネクションがこの値を超える数の未読メールを見つけた場合、最も新しい Max Results メールを返します。
Gmail コネクションが 1 つ以上のメールを返すとき、インテグレーションはメールをバッチとして処理します。つまり、Fuse Online はバッチに対してインテグレーションを 1 度実行します。
- Done をクリックして、この Gmail コネクションを最初のコネクションとしてインテグレーションに追加します。コネクションはインテグレーションフローの最初のステップとして表示されます。
8.2.4. Gmail アカウントからのメールの送信
インテグレーションでは、フローの途中で Gmail アカウントからメールを送信したり、シンプルなインテグレーションを終了するために Gmail アカウントからメールを送信することができます。これには、Gmail コネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- Gmail コネクションが作成されている必要があります。
- 送信するメールの内容を入力する代替方法 について熟知し、このようなメールの内容を入力する計画がある必要があります。
- Fuse Online は、ステップの選択またはシンプルなインテグレーションの最後のコネクションの選択を要求します。
手順
- メールの送信に使用する Gmail コネクションをクリックします。
- Choose an Action ページで Send Email をクリックします。
Configure Send Email ページで以下の 1 つを行います。
- このコネクションの直前にデータマッパーステップを追加する計画があり、インテグレーションデータを Send Email フィールドにマップする計画がある場合は、すべてのフィールドを空白にしておきます。
次の Send Email フィールドの 1 つ以上に情報を入力します。複数のメールアドレスはコンマで区切ります。
- Email To
- Email Subject
- Email Text
- Email cc
- Email bcc
一部のフィールドを空白のままにし、他の一部のフィールドに情報を入力します。
この Gmail コネクションの直前にデータマッパーステップを追加する計画があり、インテグレーションデータを一部のメールにマップする場合、アクション設定でこれらのフィールドを空白にします。必要に応じて他のアクションフィールドに値を入力します。
Send Email アクション設定フィールドに指定した値は、以前のステップからマップした値よりも優先されます。
- Done をクリックして、コネクションをフローに追加します。
結果および次のステップ
インテグレーションフローで追加した場所にコネクションが表示されます。このコネクションの前にデータマッパーステップを追加する予定がある場合は最初に、追加する予定のある他のコネクションをこのインテグレーションに追加します。その後、データマッパーステップを追加します。
8.3. Google カレンダーへの接続
ポーリングが更新を Google カレンダーに返すときにインテグレーションの実行をトリガーするには、Google カレンダーコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。イベントをカレンダーに追加するか、カレンダーのイベントを更新するには、以下のいずれかを行います。
- Google カレンダーをフローの途中に追加します。
- Google カレンダーを追加して、シンプルなインテグレーションを完了します。
Google カレンダーへの接続に関する詳細は、以下を参照してください。
8.3.1. Google カレンダーコネクションの作成
Google カレンダーのコネクションを作成するとき、1 つの特定の Google アカウントに関連する Google カレンダーへアクセスするためコネクションを承認します。Google カレンダーコネクションの作成後、複数のインテグレーションに追加できます。
前提条件
- Fuse Online が Google クライアントアプリケーションとして登録 され、Google Calendar API が有効になっている必要があります。
- Google カレンダーの Fuse Online Settings ページエントリーには、Fuse Online を Google クライアントアプリケーションとして登録して取得したクライアント ID とクライアントシークレットの値があります。
手順
- Fuse Online の左パネルで Connections をクリックし、利用可能なコネクションを表示します。
- 右上の Create Connection をクリックし、利用可能なコネクターを表示します。コネクターは、1 つ以上のコネクションを作成するために使用するテンプレートです。
- Google Calendar コネクターをクリックします。
Configure Connection ページで Connect Google Calendar をクリックします。Google のログインページが表示されます。
Connect Google Calendar が表示されない場合、Fuse Online 環境は Google Calendar API が有効な状態で Google クライアントアプリケーションとして登録されていません。「Fuse Online を Google クライアントアプリケーションとして登録」を参照してください。Fuse Online 環境が Google クライアントアプリケーションとして登録されていない状態で Google カレンダーコネクションを作成しようとすると、Fuse Online に承認情報の入力を要求する複数のフィールドが表示されます。これらのフィールドに値を入力して Google カレンダーコネクションを作成することは可能ですが、推奨されません。
- Google のログインページで、このコネクションが Fuse Online からアクセスする Google アカウントを選択し、Next をクリックします。
- openshiftapps.com wants to access your Google Account プロンプトに対して Allow をクリックし、Fuse Online に戻ります。
-
Fuse Online の Connection Name フィールドに、この接続を別の接続と区別するために使用する名前を入力します。たとえば、
Google Calendar Work Connectionを入力します。 -
Description は任意のフィールドで、このコネクションに関する便利な情報を入力します。たとえば、
Sample Google Calendar connection that uses my Google work account.を入力します。 - 右上にある Create をクリックし、作成したコネクションが利用可能になったことを確認します。上記の例の名前を入力した場合は、インテグレーションに追加できるコネクションとして Google Calendar Work Connection が表示されます。
8.3.2. ポーリングが Google カレンダーからイベントを返すときにインテグレーションをトリガー
指定した Google カレンダーからイベントを取得したときにインテグレーションの実行をトリガーするには、Google カレンダーコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。インテグレーションの実行時、Google カレンダーコネクションはユーザーが制御できる間隔で Google カレンダーのイベントをチェックします。コネクションが、Google カレンダーの Get Events アクションの設定方法に準拠するイベントを見つけると、コネクションはイベントをインテグレーションの次のステップに渡します。
Google カレンダーコネクションが 2 つ以上のイベントを返すとき、Fuse Online は返された各イベントに対してインテグレーションを実行します。たとえば、ポーリングによって 5 つのイベントが返されると、Fuse Online はインテグレーションを 5 回実行します。
前提条件
- Google カレンダーコネクションが作成済みである必要があります。
手順
- Fuse Online パネルの左側にある Integrations をクリックします。
- Create Integration をクリックします。
- Choose a Start Connection ページで、インテグレーションを開始するために使用する Google カレンダーコネクションをクリックします。
- Choose an Action ページで Get Events アクションをクリックします。
Get Events アクションを設定します。
- Delay フィールドには、デフォルトの 30 秒を使用するか、インテグレーションがカレンダーをチェックする頻度を指定します。
- Calendar name フィールドには、この Google カレンダーコネクションによるアクセスが承認されている Google アカウントからアクセス可能なカレンダーの名前を入力します。
- Max Results フィールドでは、デフォルトの 5 を使用するか、各ポーリングに対して返すことができるコネクションの最大イベント数を指定します。
以下の 1 つを選択し、コネクションが使用するイベントのチェックの開始日を示します。コネクションはこの日付と後続の日付をチェックします。
Consume from the current date ahead を選択すると、現在の日付が開始日になります。
たとえば、このオプションを選択し、Max Results が 5 の場合、Google カレンダーコネクションはイベントのチェックは現在の日付から開始され、見つかったイベントを最初から最大 5 つ返します。最後のポーリング後にイベントが更新または追加されたかは関係ありません。
Consume from the last event update date on the next poll を選択すると、前回のポーリングで返された最新の更新イベントの日付が開始日になります。
たとえば、このオプションを選択し、Max Results が 5 の場合、Google カレンダーコネクションは最大 5 つの更新または新規イベントを返します。コネクションが新規または送信イベントをチェックする開始日は、前回のポーリングで返された最新の更新イベントの日付になります。
任意で、Query for events フィールドにテキストを指定し、ポーリングが返すことができるイベントをフィルターすることができます。コネクションは、最低でも 1 つのイベントフィールドに指定されたテキストが含まれるイベントのみを返します。
たとえば、クエリーフィールドに
Standup meetingを指定するとします。この場合、ポーリングはイベントフィールドにStandup meetingが含まれるイベントのみを返します。
- Done をクリックして、この Google カレンダーコネクションをインテグレーションの最初のコネクションとして追加します。コネクションはインテグレーションの最初のステップとして表示されます。
8.3.3. Google カレンダーからの特定イベントの取得
インテグレーションでは、フローの途中で特定の Google カレンダーイベントを取得できます。特定イベントの取得は、以下のような場合に便利です。
- 後続の Google カレンダーコネクションでイベントを更新する場合。
- 後続の Twitter コネクションを使用してイベントを発表する場合。
1 つのイベントを取得するには、Google カレンダーをフローの途中に追加します。
本リリースでは、シンプルなインテグレーションの最後のコネクションで特定のイベントを取得することはサポートされますが、これは特に便利なことではありません。これは今後のリリースで変更される予定です。
前提条件
- Google カレンダーコネクションが利用でき、取得するイベントがある Google カレンダーへのアクセスが承認されている必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。
手順
- 接続するカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an Action ページで Get a Specific Event をクリックします。
- 取得するイベントがあるカレンダーの名前を指定します。
取得するイベントの ID を指定します。イベント ID を取得するには、以下の 1 つを行います。
- 以前の Google カレンダーコネクションからマップします。
以下のようにカレンダーから手動で取得します。
- ブラウザーで、取得するイベントが含まれるカレンダーを表示します。
-
URL の末尾に
?gsessionid=OK&eventdeb=1を追加し、カレンダーを再表示します。 - カレンダーで、取得するイベントをクリックします。
-
イベントのポップアップで、
をクリックし、Troubleshooting info を選択します。
-
Google カレンダーが表示するポップアップで、
eid=に続く文字列をコピーします。たとえば、イベント ID はp1pva2a4t504gbsha12di9ch6k_20181107T150000Z*のようになります。
- Done をクリックして、コネクションをフローに追加します。フローで追加した場所にコネクションが表示されます。
8.3.4. イベントの Google カレンダーへの追加
インテグレーションでは、フローの途中で Google カレンダーにイベントを追加したり、シンプルなインテグレーションを終了するために Google カレンダーにイベントを追加することができます。これには、Google カレンダーコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- Google カレンダーコネクションが利用でき、イベントを追加する Google カレンダーへのアクセスが承認されている必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- イベントを追加するカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an Action ページで Create Event アクションをクリックします。
Create Event アクションを設定します。
- 新しいイベントのタイトルを入力します。
- イベントの追加先となる Google カレンダーの名前を入力します。
- その他の入力パラメーターにはデータを入力できますが、以前の Google カレンダーコネクションで取得したイベントから値をマップすることも可能です。
- Done をクリックして、コネクションをフローに追加します。インテグレーションフローで追加した場所にコネクションが表示されます。
8.3.5. Google カレンダーでのイベントの更新
インテグレーションでは、フローの途中で Google カレンダーのイベントを更新したり、シンプルなインテグレーションを終了するために Google カレンダーのイベントを更新することができます。これには、Google カレンダーコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
本リリースでは、Update Event アクションには各イベントフィールドに値が必要です。よって、ほぼすべての場合で、更新するイベントを取得する Google カレンダーコネクションを追加し、次にイベントを更新する Google カレンダーコネクションを追加してから、この 2 つの Google カレンダーコネクションの間にデータマッパーステップを挿入する必要があります。
前提条件
- Google カレンダーコネクションが利用でき、更新するイベントがある Google カレンダーへのアクセスが承認されている必要があります。
- フローには、Google カレンダーへの以前のコネクションがあり、そのコネクションが更新するイベントを取得します。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- 更新するイベントがあるカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an Action ページで Update Event をクリックします。
Update Event アクションを設定します。
- 更新するイベントのタイトルを入力します。
- 更新する各イベントフィールドの内容を入力します。フィールドの内容を変更したくない場合は、イベントフィールドに内容を入力しないでください。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
- インテグレーション可視化フローで、追加したばかりのコネクションの前にあるプラス記号をクリックします。
- Data Mapper をクリックします。
データマッパーで、更新されたイベントの変更のなかった各イベントフィールドを、イベントを取得した Google カレンダーコネクションから、イベントを更新した Google カレンダーコネクションの対応フィールドにマップします。
更新しているフィールドをマップしないでください。Update Event アクションの設定時にフィールドをマップし、そのフィールドの更新も指定すると、Fuse Online はマップされた値を使用します。
- 右上の Done をクリックし、データマッパーステップを追加します。
8.4. Google スプレッドシートへの接続
Google スプレッドシートコネクションがスプレッドシートデータまたはスプレッドシートプロパティーを返すときにインテグレーションの実行をトリガーするには、Google スプレッドシートコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。スプレッドシートの値またはプロパティーを更新するか、チャートまたはピボットテーブルをスプレッドシートに挿入して、シンプルなインテグレーションを終了するには、Google スプレッドシートコネクションを最後のコネクションとしてシンプルなインテグレーションに追加します。
フローの途中で、スプレッドシートで値を取得、作成、または更新する Google スプレッドシートコネクションを追加でき、スプレッドシートにチャートやピボットテーブルを挿入する Google スプレッドシートコネクションを追加することもできます。
Google スプレッドシートへの接続に関する詳細は、以下を参照してください。
8.4.1. Google スプレッドシートコネクションの作成
Google スプレッドシートのコネクションを作成するとき、1 つの特定の Google アカウント (ユーザーが選択する) に関連する Google スプレッドシートへアクセスするためにコネクションを承認します。Google スプレッドシートコネクションの作成後、複数のインテグレーションに追加できます。
前提条件
- Fuse Online が Google クライアントアプリケーションとして登録 され、Google Sheets API が有効になっている必要があります。
- Google スプレッドシートの Fuse Online Settings ページエントリーには、Fuse Online を Google クライアントアプリケーションとして登録して取得したクライアント ID とクライアントシークレットの値があります。
手順
- Fuse Online の左パネルで Connections をクリックし、利用可能なコネクションを表示します。
- 右上の Create Connection をクリックし、利用可能なコネクターを表示します。コネクターは、1 つ以上のコネクションを作成するために使用するテンプレートです。
- Google Sheets コネクターをクリックします。
Configure Connection ページで Connect Google Sheets をクリックします。Google のログインページが表示されます。
Connect Google Sheets が表示されない場合、Fuse Online 環境は Google Sheets API が有効な状態で Google クライアントアプリケーションとして登録されていません。「Fuse Online を Google クライアントアプリケーションとして登録」を参照してください。Fuse Online 環境が Google クライアントアプリケーションとして登録されていない状態で Google スプレッドシートコネクションを作成しようとすると、Fuse Online に承認情報の入力を要求する複数のフィールドが表示されます。これらのフィールドに値を入力して Google スプレッドシートコネクションを作成することは可能ですが、推奨されません。
- Google のログインページで、このコネクションが Fuse Online からアクセスする Google アカウントを選択し、Next をクリックします。
- openshiftapps.com wants to access your Google Account プロンプトに対して Allow をクリックし、Fuse Online に戻ります。
-
Fuse Online の Connection Name フィールドに、この接続を別の接続と区別するために使用する名前を入力します。たとえば、
Google Sheets Work Connectionを入力します。 -
Description は任意のフィールドで、このコネクションに関する便利な情報を入力します。たとえば、
Sample Google Sheets connection that uses my Google work account.を入力します。 - 右上にある Create をクリックし、作成したコネクションが利用可能になったことを確認します。上記の例の名前を入力した場合は、インテグレーションに追加できるコネクションとして Google Sheets Work Connection が表示されます。
8.4.2. ポーリングがスプレッドシートデータを返すときにインテグレーションをトリガー
Google スプレッドシートからデータを取得したときにインテグレーションの実行をトリガーするには、Google スプレッドシートコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。インテグレーションの実行時、Google スプレッドシートは指定された間隔でスプレッドシートをポーリングして特定したデータを取得し、データをインテグレーションの次のステップに渡します。
スプレッドシートの特定のシートからデータを取得するには、Google スプレッドシートコネクションの Get sheet values アクションを設定するときにシート名を指定します。1 つの特定のコネクションは 1 つのシートからのみデータを取得できます。
ポーリングの合間に、コネクションが返すように設定されているシート値に変更がない場合は、次回のポーリングは前回のポーリングと同じ値を返します。
前提条件
- データの取得元となるスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
手順
- Fuse Online パネルの左側にある Integrations をクリックします。
- Create Integration をクリックします。
- Choose a Start Connection ページで、インテグレーションの開始に使用する Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Get sheet values アクションをクリックします。
Get sheet values アクションを設定します。
SpreadsheetId フィールドには、この Google スプレッドシートコネクションによるアクセスが承認されている Google アカウントからアクセス可能な Google のスプレッドシートの ID を入力します。
スプレッドシート ID を取得するには、ブラウザーでスプレッドシートを表示します。ID は
d/と/editの間にある URL の一部です。Range フィールドに、取得するデータを識別する Google A1 表記を入力します。デフォルトは A:A です。
たとえば、4 つの列が含まれる 1 つのシートがあるスプレッドシートからすべてのデータを取得する場合、
A:Dを指定します。行 5 から 15 からデータを取得する場合はA5:D15を指定します。データの取得元となるスプレッドシートに複数のシートがある場合は、スプレッドシート名とともに、開始セルの座標と終了セルの座標を指定します。複数のシートがある場合にシート名を指定しないと、コネクションはスプレッドシートの最初のシートからデータを取得します。たとえば、
2019!A1:D5を指定すると、2019という名前のシートからデータを取得します。そのシートで列 A から 列 D の行 1 から 5 のデータを取得します。- Major Dimension フィールドでは、デフォルトである Rows を使用するか、Columns を選択します。Rows は、行オブジェクトのコレクションを返すようアクションを設定します。Columns は、列オブジェクトのコレクションを返すようアクションを設定します。各列オブジェクトには該当する各行の値が含まれます。
Split Results フィールドでデフォルトの No を許可するか、Yes を選択します。No を設定すると、データを値のコレクションとして返すアクションを設定します。これにより、コネクションは行オブジェクトのコレクションまたは列オブジェクトのコレクションをフローの次のステップに渡します。Yes を選択すると、Major Dimension の設定にしたがってコネクションは返されたデータを分割できます。たとえば、Major Dimension が Rows に設定されている場合、コネクションは行オブジェクトを返します。各行オブジェクトはフローの実行を個別にトリガーします。Fuse Online は返された各行オブジェクトに対してフローを 1 度実行します。たとえば、ポーリングによって 5 つの行が返されると、Fuse Online はフローを 5 回実行します。
Fuse Online は、フローに追加できる個別の分割ステップ (split step) および集約ステップ (aggregate step) も提供します。1 つ以上のステップで個別のオブジェクトを処理し、行または列オブジェクトを集約する場合、Google スプレッドシートコネクションの結果を分割しないでください。代わりに、デフォルトの No を使用し、このコネクションの後にフローに分割ステップ (split step) を追加します。フローに集約ステップ (aggregate step) を使用する場合は分割ステップ (split step) が必要になります。
- Delay フィールドには、デフォルトの 30 秒を使用するか、コネクションがスプレッドシートデータを取得する頻度を指定します。
Max Results フィールドにはデフォルトの 25 を使用するか、結果メトリクスのマイナーディメンションに対して他の制限を指定します。
たとえば、Major Dimension が列でその Max Results が 25 の場合、ポーリングは範囲の設定に含まれる各列の列オブジェクトを返します。各列オブジェクトには 25 以下の行の値が含まれます。
本リリースでは、Max Results の設定は Split Results が Yes に設定されている場合のみ有効である既知の問題が存在します。Split Results が No に設定された場合、Max Results の設定は無視されます。次回のリリースでは、Max Results の設定は Split Results の設定に依存しなくなる予定です。
- Done をクリックして、この Google スプレッドシートコネクションをインテグレーションの最初のコネクションとして追加します。インテグレーション可視化パネルで、コネクションはインテグレーションの最初のステップとして表示されます。
次のステップ
最初のコネクションの追加後、インテグレーションの最後のコネクションを追加するよう求められます。インテグレーションの最初および最後のコネクションを追加した後、インテグレーションに必要な他のコネクションを追加します。シートの値を取得するコネクションの後に、データマッパーステップを追加します。Fuse Online は、Get sheet values アクションの設定方法に応じて、データマッパーでソースフィールドを表示します。メジャーディメンションが Rows である場合、データマッパーはターゲットにマップできるフィールドとして列名を表示します。メジャーディメンションが COLUMNS である場合、データマッパーは行インデックスをターゲットにマップできるフィールドとしてリストします。
その他のリソース
スプレッドシートでセルのグループを指定する Google A1 表記
8.4.3. ポーリングがスプレッドシートプロパティーを返すときにインテグレーションをトリガー
Google スプレッドシートからプロパティーを取得したときにインテグレーションの実行をトリガーするには、Google スプレッドシートコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。インテグレーションの実行時、Google スプレッドシートは指定された間隔でスプレッドシートをポーリングしてスプレッドシートプロパティーを取得し、結果をインテグレーションの次のステップに渡します。
プロパティーには、スプレッドシートのタイトル、ロケール、およびタイムゾーンが含まれます。ポーリングの合間にシートプロパティーに変更がない場合は、次のポーリングは前回のポーリングと同じ値を返します。
前提条件
- プロパティーの取得元となるスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
手順
- Fuse Online パネルの左側にある Integrations をクリックします。
- Create Integration をクリックします。
- Choose a Start Connection ページで、インテグレーションの開始に使用する Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Get spreadsheet properties アクションをクリックします。
Get spreadsheet properties アクションを設定します。
SpreadsheetId フィールドには、この Google スプレッドシートコネクションによるアクセスが承認されている Google アカウントからアクセス可能な Google のスプレッドシートの ID を入力します。
スプレッドシート ID を取得するには、ブラウザーでスプレッドシートを表示します。ID は
d/と/editの間にある URL の一部です。- Delay フィールドには、デフォルトの 30 秒を使用するか、コネクションがプロパティーを取得する頻度を指定します。
- Done をクリックして、この Google スプレッドシートコネクションをインテグレーションの最初のコネクションとして追加します。インテグレーション可視化パネルで、コネクションはインテグレーションのフローの最初のステップとして表示されます。
8.4.4. スプレッドシートの作成
フローの途中に新しいスプレッドシートを作成するには、Google スプレッドシートコネクションを最初のコネクションと最後のコネクションの間に追加します。スプレッドシートを作成する Google スプレッドシートコネクションでシンプルなインテグレーションを終了することはできますが、同じコネクションの新しいスプレッドシートにデータを追加することはできません。そのため、スプレッドシートを作成し、同じフローのスプレッドシートにデータを追加する場合、フローには 2 つの Google スプレッドシートコネクションが必要になります。1 つのコネクションはスプレッドシートを作成し、後続のコネクションはデータをスプレッドシートに追加します。
前提条件
- スプレッドシートを作成する Google アカウントへのアクセスが承認される Google スプレッドシートコネクションが作成されている必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- スプレッドシートの作成に使用する Google アカウントへのアクセスが承認される Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Create spreadsheet をクリックします。
Create spreadsheet アクションを設定します。
- Title フィールドに新しいスプレッドシートのタイトルを入力します。
-
Time Zone フィールドに新しいスプレッドシートが使用するタイムゾーンを入力します (例:
India Standard Time、Tokyo)。 -
Locale フィールドに新しいスプレッドシートのロケールを入力します (例:
Canada、Hong Kong)。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
結果
スプレッドシートを作成するコネクションによって新しいスプレッドシートのスプレッドシート ID が返されます。後続のステップで、このスプレッドシート ID を更新などのために新しいスプレッドシートにアクセスするコネクションのスプレッドシート ID にマップできます。
8.4.5. シートのデータの更新
インテグレーションでは、フローの途中でスプレッドシートのデータを更新したり、シンプルなインテグレーションを終了するためにスプレッドシートでデータを更新することができます。これには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- 更新する Google スプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
- 更新するスプレッドシートのスプレッドシート ID にアクセスできる必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- 更新するスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Update sheet values をクリックします。
Update sheet values を設定します。
SpreadsheetId フィールドで以下の 1 つを行います。
- 更新するスプレッドシートの ID を入力します。
- フィールドは空白のままにします。この場合、このコネクションをフローに追加した後に、このコネクションの前にデータマッパーステップを追加する必要があります。データマッパーステップでは、スプレッドシート ID を以前のコネクションからこのコネクションにマップします。以前のコネクションはこのコネクションで更新するスプレッドシートにアクセスする必要があります。
Range フィールドでは、Google A1 表記を使用して更新するスプレッドシートのセルを指定します。開始および終了座標を指定します。たとえば、
A1:D4はスプレッドシートの最初のシートで最初の 4 行の最初の 4 列を更新します。デフォルトは
A:Aで、スプレッドシートの最初のシートで最初の列を更新します。- Major Dimension フィールドでは、デフォルトである Rows を使用するか、Columns を選択します。Rows は、行オブジェクトを使用してシートを更新するアクションを設定します。各行オブジェクトには、更新する各列の値が含まれます。Columns は、列オブジェクトを使用してシートを更新するアクションを設定します。各列オブジェクトには、更新する各行の値が含まれます。
Value Input Option フィールドには、シートを更新するために受信するデータを Google スプレッドシートが解釈する方法を示します。デフォルトの Unspecified を使用すると、Google スプレッドシートは認識するデータを自動的に変換します。たとえば、入力データが日付である場合、Google スプレッドシートは日付としてフォーマットします。入力データが 10 進数の場合は、Google スプレッドシートは 10 進数としてフォーマットします。
- Unspecified のデフォルトは Google Sheets API 設定で、このデフォルトは User entered になります。
- Raw を選択すると、Google スプレッドシートは入力データをそのまま挿入します。
- User entered は、認識可能なデータの自動変換を有効にします。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
- フローに他のコネクションを追加する場合はここで追加し、これらの手順に戻ります。
- フローにすべてのコネクションを追加したら、インテグレーション可視化フローで、シート値を更新する Google スプレッドシートコネクションの直前にあるプラスマークをクリックします。
- Data Mapper カードをクリックして、データマッピングステップをフローに追加します。
データマッパーで以下を行います。
-
Update sheet values アクションを設定したときにスプレッドシート ID を指定しなかった場合、ソース
spreadsheetIdをターゲットspreadsheetIdにマップします。 フィールドをソースステップからターゲットスプレッドシートにマッピングして、シートの更新に使用するデータを指定します。たとえば、フィールドを別のスプレッドシートやデータベースからマッピングする場合があります。
必要な場合、シートの値を更新する Google スプレッドシートコネクションを編集し、Range または Major Dimension の設定を変更することができます。これらの設定を変更すると、データマッパーは変更に応じて異なるターゲットフィールドを表示します。
- 右上の Done をクリックし、データマッパーステップを追加します。
-
Update sheet values アクションを設定したときにスプレッドシート ID を指定しなかった場合、ソース
8.4.6. データをシートに追加
フローの途中でシートにデータを追加したり、シンプルなインテグレーションを終了するためにシートにデータを追加することができます。これには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- データを追加する Google スプレッドシートへのアクセスが承認される Google スプレッドシートコネクションが作成されている必要があります。
- データを追加するスプレッドシートの ID にアクセスできる必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- データを追加するスプレッドシートへのアクセスが承認される Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Append values to a sheet をクリックします。
Append values to a sheet アクションを設定します。
SpreadsheetId フィールドで以下の 1 つを行います。
- 値を追加するスプレッドシートの ID を入力します。
- フィールドは空白のままにします。この場合、このコネクションをフローに追加した後に、このコネクションの前にデータマッパーステップを追加する必要があります。データマッパーステップでは、スプレッドシート ID を以前のコネクションからこのコネクションにマップします。以前のコネクションはこのコネクションでデータを追加するスプレッドシートにアクセスする必要があります。
Range フィールドに Google A1 表記を使用し、データを追加するスプレッドシートの範囲を指定します。開始および終了座標を指定します。たとえば、
A3:D3の場合は最初のシートの 4 列の 3 行目の後にデータを追加します。デフォルトはA:Aで、スプレッドシートの最初のシートで最初の列にデータを追加します。コネクションはデータを上書きすることはありません。コネクションは指定した範囲の後でデータの追加を開始し、常にデータを適切な場所にある内容に追加します。
- Major Dimension フィールドでは、デフォルトである Rows を使用するか、Columns を選択します。Rows は、行オブジェクトを使用してデータを追加するアクションを設定します。各行オブジェクトには、データを追加する各列の値が含まれます。Columns は、列オブジェクトを使用してデータを追加するアクションを設定します。各列オブジェクトには、追加する各行の値が含まれます。
Value Input Option フィールドには、シートに追加するために受信するデータを Google スプレッドシートが解釈する方法を示します。デフォルトの Unspecified を使用すると、Google スプレッドシートは認識するデータを自動的に変換します。たとえば、入力データが日付である場合、Google スプレッドシートは日付としてフォーマットします。入力データが 10 進数の場合は、Google スプレッドシートは 10 進数としてフォーマットします。
- Unspecified のデフォルトは Google Sheets API 設定で、このデフォルトは User entered になります。
- Raw を選択すると何もしません。Google スプレッドシートは入力データをそのまま挿入します。
- User entered は、認識可能なデータの自動変換を有効にします。
Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
Append values to a sheet アクションを設定するために指定した値は、このコネクションをマッピング先またはマッピング元とするためにデータマッパーが表示するフィールドを判断します。
- フローに他のコネクションを追加する場合はここで追加し、これらの手順に戻ります。
- フローにすべてのコネクションを追加したら、インテグレーション可視化フローで、データをシートに追加する Google スプレッドシートコネクションの直前にあるプラスマークをクリックします。
- Data Mapper カードをクリックして、データマッピングステップをフローに追加します。
データマッパーで以下を行います。
-
Append values to a spreadsheet アクションを設定したときにスプレッドシート ID を指定しなかった場合、ソース
spreadsheetIdをターゲットspreadsheetIdにマップします。 フィールドをソースステップからターゲットスプレッドシートにマッピングして、シートに追加するデータを指定します。たとえば、フィールドを別のスプレッドシートやデータベースからマッピングする場合があります。
必要な場合、シートの値を追加する Google スプレッドシートコネクションを編集し、Range または Major Dimension の設定を変更することができます。これらの設定を変更すると、データマッパーは変更に応じて異なるターゲットフィールドを表示します。
- 右上の Done をクリックし、データマッパーステップを追加します。
-
Append values to a spreadsheet アクションを設定したときにスプレッドシート ID を指定しなかった場合、ソース
8.4.7. スプレッドシートプロパティーの更新
インテグレーションでは、フローの途中でスプレッドシートのプロパティーを更新したり、シンプルなインテグレーションを終了するためにスプレッドシートでデータを更新することができます。これには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
プロパティーには、スプレッドシートのタイトル、ロケール、およびタイムゾーンが含まれます。
Fuse Online が Update spreadsheet properties アクションの設定を要求したら、一部またはすべてのフィールドを空白のままにしておきます。フィールドを空白のままにした場合、このコネクションの前のフローのデータマッパーステップ (後で追加) で、フィールドを以前のステップから空白の Update spreadsheet properties アクション設定フィールドにマップします。
前提条件
- プロパティーを更新する Google スプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
- プロパティーを更新するスプレッドシートのスプレッドシート ID にアクセスできる必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- プロパティーを更新するスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで、Update spreadsheet properties をクリックします。
Update spreadsheet properties アクションを設定します。
SpreadsheetId フィールドで以下の 1 つを行います。
- プロパティーを更新するスプレッドシートの ID を入力します。
- フィールドは空白のままにします。この場合、このコネクションをフローに追加した後、このコネクションの前にデータマッパーステップを追加する必要があります。データマッパーステップでは、スプレッドシート ID を以前のコネクションからこのコネクションにマップします。以前のコネクションはこのコネクションで更新するスプレッドシートにアクセスする必要があります。
- 別のフィールドには、プロパティーを変更する場合のみ値を入力します。また、フィールドを空白のままにすることもできます。空白にする場合は、このコネクションの直前に後で追加するデータマッパーステップで、変更するフィールドをマップできます。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
- フローに他のコネクションを追加する場合はここで追加し、これらの手順に戻ります。
フローにコネクションがすべて追加されたら、データマッパーステップを使用してスプレッドシートプロパティーを更新することができます。
- インテグレーション可視化フローで、プロパティーを更新する Google スプレッドシートコネクションの直前にあるプラス記号をクリックします。
- Data Mapper をクリックして、データマッピングステップをフローに追加します。
-
データマッパーで、Update spreadsheet properties アクションを設定したときにスプレッドシートを指定しなかった場合は、ソース
spreadsheetIdをターゲットspreadsheetIdにマップします。 - Update spreadsheet properties アクションを設定したときに更新された値を指定しなかった、変更する各スプレッドシートプロパティーに対し、フィールドをソースステップから変更するターゲットスプレッドシートプロパティーにマップします。
- 右上の Done をクリックし、データマッパーステップを追加します。
8.4.8. チャートをシートに追加
フローの途中で基本的なチャートや円グラフを Google のスプレッドシートに追加できます。これには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。これには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。データマッピングステップでは、チャートの場所、プロパティー、および内容を判断するオプションを設定します。
Fuse Online が Add charts アクションの設定を要求したら、一部またはすべてのフィールドを空白のままにすることができます。フィールドを空白のままにする場合、このコネクションの直前に追加するデータマッパーステップで値をそのフィールドにマップできます。
前提条件
- チャートを追加する Google スプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
- チャートを追加するスプレッドシートの ID にアクセスできる必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。Fuse Online で、インテグレーションを追加するよう要求されるか、シンプルなインテグレーションの最後のコネクションを選択するよう要求されます。
手順
- チャートを追加するスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Add charts をクリックします。
Add charts アクションを設定します。
SpreadsheetId フィールドで以下の 1 つを行います。
- チャートを追加するスプレッドシートの ID を入力します。
- フィールドは空白のままにします。このコネクションの直前のデータマッパーステップで、スプレッドシート ID を以前のコネクションからこのコネクションにマップします。以前のコネクションは、このコネクションでチャートを追加するスプレッドシートにアクセスする必要があります。
Chart Title フィールドにタイトルを入力します。
このフィールドを空白のままにすることもできます。このコネクションの直前のデータマッパーステップで、チャートのタイトルをソースフィールドまたはプロパティーから
titleターゲットフィールドにマップします。Subtitle フィールドにサブタイトルを入力します。
このフィールドを空白のままにすることもできます。このコネクションの直前のデータマッパーステップで、チャートのサブタイトルをソースフィールドまたはプロパティーから
subtitleターゲットフィールドにマップします。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
- フローに他のコネクションを追加する場合はここで追加します。その後、これらの手順に戻ります。
- インテグレーション可視化フローで、チャートを追加するコネクションの直前にあるプラス記号をクリックします。
Data Mapper をクリックします。
データマッパーで、チャートを追加するターゲット Google スプレッドシートコネクションにソースプロパティー、ソースフィールド、またはソース定数をマップします。以下の手順は、各ターゲットフィールドにマップする値が含まれるソースフィールド、ソースプロパティー、またはソース定数があることを仮定します。
必要な値のソースがない場合、Properties フォルダーの右にあるプラス記号をクリックして、データマッパーでソースプロパティーを作成します。Create Property ダイアログで、正しいターゲットフィールドへのマッピングを容易にする名前をプロパティーに付けます。たとえば、
overlayPositionをプロパティー名とすることができます。プロパティーの値には、コネクションがチャートの作成に使用する値を指定します。チャートのオーバーレイポジションフィールドにはセルを特定する A1 表記が必要です。これは、開始ポジションを指定しますが、終了ポジションを指定する必要はなく、終了ポジションがある場合は無視されます。たとえば、overlayPosition ソースプロパティーの値としてD4を指定します。新しいプロパティーを保存します。Add charts アクションを設定したときに、スプレッドシート ID、チャートのタイトル、およびチャートのサブタイトルの値を指定した場合は、このフィールドに値をマップしないでください。
チャートをシートに追加するには、以下のようにソースプロパティー、ソースフィールド、またはソース定数をターゲットフィールドにマップします。
セルを識別する A1 表記を overlayPosition ターゲットフィールドにマップして、チャートの場所を設定します。終了ポジションは必要なく、指定があっても無視されます。マップされた値は、Google スプレッドシートがチャートを配置するセルを特定します。このセルはチャート表示の左上隅になります。
overlayPosition フィールドに値をマップせず、チャートを追加するシートを特定する sheetId フィールドにも値をマップしないと、Google スプレッドシートが新しいシートを作成し、チャートを A1 に配置するのがデフォルトの動作になります。
sheetId フィールドに値をマップする場合は、overlayPosition フィールドに値をマップする必要があります。
- ソース spreadsheetId フィールドをターゲット spreadsheetId フィールドにマップします。コネクションはこのスプレッドシートのソースデータを使用して、チャートを同じスプレッドシートのシートに追加します。ソースデータとチャートは同じスプレッドシートの異なるシートに配置することができますが、異なるスプレッドシートに配置することはできません。
- ターゲット title フィールドにマッピングして、チャートタイトルを設定します。コネクションはこの文字列をチャートのタイトルとして挿入します。
- ターゲット subtitle フィールドにマッピングして、チャートのサブタイトルを設定します。コネクションはこの文字列をチャートのサブタイトルとして挿入します。
整数を sheetId フィールドにマップして、チャートを追加するシートを特定します。
sheetId フィールドに値をマップする場合、overlayPosition フィールドに値をマップする必要もあります。
sheetId フィールドに値をマップせず、overlayPosition フィールドにも値をマップしない場合、コネクションは新しいシートを作成し、チャートをその新しいシートに追加します。
sheetId フィールドに値をマップせずに、overlayPosition フィールドに値をマップした場合、コネクションは sourceSheetId フィールドによって特定されたシートにチャートを配置します。このシートはチャートのデータを提供します。
0はスプレッドシートの最初のシートを特定します。後続のシートは、シートをブラウザーで見るときに URL の最後の部分がシート ID となります。たとえば、以下の URL の最後にはgid=206589330があります。https://docs.google.com/spreadsheets/d/1pa…ngQbKkM/edit#gid=206589330これは、シート ID が
206589330であることを示しています。これが sheetId にマップする値になります。整数のシート ID をターゲット sourceSheetId フィールドにマップして、チャートのデータを提供するシートを特定します。デフォルトは
0で、スプレッドシートの最初のシートを特定します。基本のチャートまたは円グラフを追加できます。追加するチャートの種類によって、以下の手順の 1 つにしたがいます。
基本のチャートを追加するには、ターゲットパネルで basicChart フォルダーを展開し、ソースフィールドを basicChart のターゲットフィールドにマップします。
-
ターゲット type フィールドにマップして、チャートの種類 (
BAR、LINE、AREA、またはCOLUMN) を設定します。デフォルトはCOLUMNです。 - ターゲット axisTitleBottom フィールドにマップして、チャートの横軸のタイトルを設定します。
- ターゲット axisTitleLeft フィールドにマップして、チャートの縦軸のタイトルを設定します。
-
ターゲット domainRange フィールドにマップして、チャートが表す情報の上位カテゴリーを設定します。このフィールドは Google スプレッドシートの A1 表記を使用します。たとえば、ソースシートの最初の列が
A2からA6までの 5 つの製品のリストを提供し、チャートが各製品の一部のデータを示すこととします。この場合、この列の最初のセル (A1) にはProductsのようなラベルが含まれる必要があります。domainRange の設定はA1:A6になります。チャートにはA2からA6までのデータが含まれるようになります。チャートにはラベルは表示されません。 -
ターゲット dataRange フィールドをマップして、チャートが示すソースデータの場所を特定します。このフィールドは Google スプレッドシートの A1 表記を使用します。チャートは 1 系列のデータのみを提供します。domainRange の例を引き続き使用し、最初の列にリストされた各 5 製品の販売数をソースシートの 2 番目の列に表し、このデータをチャートに示すとします。この場合、この列の最初のセル (
B1) にはNumber Soldのようなラベルが含まれる必要があります。dataRange の設定はB1:B6になります。チャートにはB2からB6までのデータが含まれるようになります。チャートにはラベルは表示されません。
-
ターゲット type フィールドにマップして、チャートの種類 (
円グラフを追加するには、ターゲットパネルで pieChart フォルダーを展開し、ソースフィールドを pieChart フォルダーのターゲットフィールドにマップします。
-
ターゲット legendPosition フィールドにマップして、円グラフの凡例の場所を設定します。デフォルトは
LEFT_LEGENDです。この値は、BOTTOM_LEGEND、LEFT_LEGEND、RIGHT_LEGEND、TOP_LEGEND、またはNO_LEGENDである必要があります。 -
ターゲット domainRange フィールドにマップして、円グラフが表す情報の上位カテゴリーを設定します。このフィールドは Google スプレッドシートの A1 表記を使用します。たとえば、ソースシートの最初の列が
A2からA6までの 5 つの製品のリストを提供し、チャートが各製品の一部のデータを示すこととします。この場合、この列の最初のセル (A1) にはProductsのようなラベルが含まれる必要があります。domainRange の設定はA1:A6になります。チャートにはA2からA6までのデータが含まれるようになります。チャートにはラベルは表示されません。 -
ターゲット dataRange フィールドをマップして、チャートが示すソースデータの場所を特定します。このフィールドは Google スプレッドシートの A1 表記を使用します。チャートは 1 系列のデータのみを提供します。domainRange の例を引き続き使用し、最初の列にリストされた各 5 製品の販売数をソースシートの 2 番目の列に表し、このデータをチャートに示すとします。この場合、この列の最初のセル (
B1) にはNumber Soldのようなラベルが含まれる必要があります。dataRange の設定は B1:B6 になります。チャートにはB2からB6までのデータが含まれるようになります。チャートにはラベルは表示されません。
-
ターゲット legendPosition フィールドにマップして、円グラフの凡例の場所を設定します。デフォルトは
- 右上の Done をクリックし、データマッパーステップを追加します。
8.4.9. ピボットテーブルをシートに追加
フローの途中でピボットテーブルを Google のスプレッドシートに追加できます。また、シンプルなインテグレーションを完了するために追加することもできます。ピボットテーブルではスプレッドシートデータを集計または並べ替えでき、スプレッドシートデータに関数を適用することもできます。ピボットテーブルを追加するには、Google スプレッドシートコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。その後、データマッピングステップをコネクションの前に追加します。データマッピングステップでは、ピボットテーブルの場所、プロパティー、および内容を判断するオプションを設定します。
本リリースでは、Add pivot table アクションは 1 つの値グループ、1 つの行ピボットグループ、および 1 つの列ピボットグループの定義に限定されます。単一のアクションでの複数グループのサポートは、今後のリリースで追加される予定です。回避策として、同じソーススプレッドシートを基にしてピボットテーブルを追加する複数の Google スプレッドシートコネクションを追加することができます。
前提条件
- ピボットテーブルを追加する Google スプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションが作成されている必要があります。
- ピボットテーブルのソースデータが含まれるスプレッドシートの ID にアクセスできる必要があります。
- フローを作成または編集することになります。Fuse Online はステップの選択を要求します。Fuse Online で、インテグレーションを追加するよう要求されるか、シンプルなインテグレーションの最後のコネクションを選択するよう要求されます。
手順
- ピボットテーブルを追加するスプレッドシートへのアクセスが承認されている Google スプレッドシートコネクションをクリックします。
- Choose an Action ページで Add pivot tables をクリックします。
Add pivot tables アクションを設定するには、SpreadsheetId フィールドで以下の 1 つを行います。
- ピボットテーブルを追加するスプレッドシートの ID を入力します。
- フィールドは空白のままにします。このコネクションの直前に追加するデータマッパーステップで、スプレッドシート ID を以前のコネクションからこのコネクションにマップします。以前のコネクションは、このコネクションでピボットテーブルを追加するスプレッドシートにアクセスする必要があります。
- Done をクリックして、コネクションをフローに追加します。インテグレーション可視化フローで追加した場所にコネクションが表示されます。
- このフローに他のコネクションを追加する場合はここで追加します。その後、これらの手順に戻ります。
- インテグレーション可視化フローで、ピボットテーブルをシートに追加するコネクションの直前にあるプラス記号をクリックします。
Data Mapper をクリックします。
データマッパーで、ピボットテーブルを追加するをターゲット Google スプレッドシートコネクションにソースプロパティー、ソースフィールド、またはソース定数をマップします。以下の手順は、各ターゲットフィールドにマップする値が含まれるソースフィールド、ソースプロパティー、またはソース定数があることを仮定します。
必要な値のソースがない場合、Properties フォルダーの右にあるプラス記号をクリックして、データマッパーでソースプロパティーを作成します。Create Property ダイアログで、正しいターゲットフィールドへのマッピングを容易にする名前をプロパティーに付けます。たとえば、
valueLayoutをプロパティー名とすることができます。ピボットテーブルを作成するためにコネクションが使用する値を指定します。ピボットテーブルの値レイアウトフィールドには、HORIZONTALまたはVERTICALの値が必要であるため、VERTICALを valueLayout プロパティーの値として指定することがあります。新しいプロパティーを保存します。データマッパーで、以下のように新しいピボットテーブルを設定します。
- ソース spreadsheetId フィールドをターゲット spreadsheetId フィールドにマップします。コネクションはこのスプレッドシートのソースデータを使用して、ピボットテーブルを同じスプレッドシートのシートに追加します。ソースデータとピボットテーブルは同じスプレッドシートの異なるシートに配置することができますが、異なるスプレッドシートに配置することはできません。
整数を sheetId フィールドにマップして、ピボットテーブルを追加するシートを特定します。デフォルトは
0で、スプレッドシートの最初のシートを特定します。後続のシートは、シートをブラウザーで見るときに URL の最後の部分がシート ID となります。たとえば、以下の URL の最後にはgid=206589330があります。https://docs.google.com/spreadsheets/d/1pa…ngQbKkM/edit#gid=206589330これは、シート ID が
206589330であることを示しています。これが sheetId にマップする値になります。-
整数のシート ID をターゲット sourceSheetId フィールドにマップして、ピボットテーブルを生成するためのデータを提供するシートを特定します。sourceSheetId に値をマップしないと、コネクションは sheetId の値を使用します。sheetId にマップされた値がない場合は、
0を使用します。0はスプレッドシートの最初のシートを特定します。 - A1 表記の値をターゲット sourceRange フィールドにマップして、ピボットテーブルの生成にソースデータの範囲を設定します。たとえば、A2:D5 を設定します。
-
ターゲット valueLayout フィールドにマップして、ピボットテーブルで使用される値のレイアウトを設定します。値は、
VERTICALまたは デフォルトのHORIZONTALである必要があります。HORIZONTALを指定すると、値は列としてレイアウトされます。 - A1 表記のセル座標をターゲット start フィールドにマップして、ピボットテーブルの左上のセルを設定します。コネクションがピボットテーブルをソースデータが含まれるシートに追加するとき、値を start フィールドにマップしないと、デフォルトではピボットテーブルの左上のセルがソースデータ範囲の最初の行にあるセルとなり、ソースデータ範囲の後の最初の空白列にあるセルとなります。ソースデータがあるシートとピボットテーブルがあるシートが異なる場合、デフォルトは A1 です。
値グループを追加するには、ターゲットパネルで valueGroups 展開し、valueGroups 以下で値をフィールドにマップします。
- 値グループ名をターゲット name フィールドにマップします。
-
値グループに適用する関数をターゲット function フィールドにマップします。この値は、
SUM、COUNT、AVERAGE、MAX、MIN、またはCUSTOMである必要があります。デフォルトはSUMです。公式を定義するときにCUSTOMを function にマップします。 -
値
CUSTOMを function フィールドにマップした場合、値グループに適用するカスタムの公式をターゲット formula フィールドにマップします。 - 値グループを構築する座標の列名をターゲット sourceColumn フィールドにマップします。
行ピボットグループを追加するには、ターゲットパネルで columnGroups 展開し、columnGroups 以下で値をフィールドにマップします。
- 行ピボットグループ名をターゲット label フィールドにマップします。
-
行ピボットグループに適用する並べ替え順序をターゲット sortOrder フィールドにマップします。この値は、
ASCENDINGまたはDESCENDINGである必要があります。デフォルトはASCENDINGです。 -
trueまたはfalseをターゲット showTotals フィールドにマップします。デフォルトはtrueで、行ピボットグループの合計を表示できます。 - 行ピボットグループを構築する座標の列名をターゲット sourceColumn フィールドにマップします。
列ピボットグループを追加するには、ターゲットパネルで rowGroups 展開し、rowGroups 以下で値をフィールドにマップします。
- 列ピボットグループ名をターゲット label フィールドにマップします。
-
列ピボットグループに適用する並べ替え順序をターゲット sortOrder フィールドにマップします。この値は、
ASCENDINGまたはDESCENDINGである必要があります。デフォルトはASCENDINGです。 -
trueまたはfalseをターゲット showTotals フィールドにマップします。デフォルトはtrueで、列ピボットグループの合計を表示できます。 - 列ピボットグループを構築する座標の列名をターゲット sourceColumn フィールドにマップします。
- 右上の Done をクリックし、データマッパーステップを追加します。
その他のリソース