前回 は PowerApps の環境 "My Environment" と Common Data Service (CDS) データベースで名刺エンティティを作成した。今回は、同じ環境に Microsoft Flow のワークフローを作成してみようと思う。
Flow (フロー)
フロー は、「データ操作の後にメール通知する」のような一連のタスクを、ワークフローとして作成することができる。作成したワークフローは、PowerApps アプリから呼び出すことができるので、アプリで行う "お決まりのパターン" をワークフロー化しておけばよい。
ワークフローの作成
ここでは、データの追加、更新、削除が行われた後、Slack にデータが操作されたことを通知するワークフローを作成する。
初めに、PowerApps スタジオを開く。環境として前回作成した "My Environment" が指定されていることを確認し、[Flows] をクリックする。
Web ブラウザで PowerApps ポータルが開き、フローの画面が表示される。
データ追加用ワークフロー
まずは、データ追加用のワークフローを作成してみよう。[一から作成] をクリックすると、フローの作成画面が表示される。
[新しいステップ] - [アクションの追加] をクリックする。
検索フィールドに "Common" と入力すると、Common Data Service 用のアクションが表示されるので、その中から [Common Data Service - Create a new record] をクリックする。
以下の画面が表示された場合は、[無料体験する] をクリックする。
The database に "default"、The entity に "名刺" を選択する。すると名刺エンティティのフィールドが表示される。
会社名のテキストボックスをクリックすると、動的なコンテンツの追加ウィンドウが表示されるので、[PowerApps で確認] をクリックする。PowerApps で確認とは、「アプリのテキストボックスなどでユーザーが指定した値を使用する」ということである。
同様に、すべてのフィールドで [PowerApps で確認] を指定する。
続いて、[新しいステップ] - [アクションの追加] をクリックし、検索フィールドに "Slack" と入力する。Slack へポストするアクション [Slack - Post Message] が表示されるので、それをクリックする。
Slack へのサインインを要求されるので、[サインイン] をクリックする。
Slack のチーム名を入力して、[Continue] をクリックする。チームがない場合は、[Create a new team] から作成する。詳しくは こちら を参考にしていただきたい。
以下のような画面が表示されるので [Authorize] をクリックする。
※チーム名は伏せてある。
サインインが完了すると以下の画面が表示されるので、Channel Name に任意のチャネル名を指定する。ここでは Slack にデフォルトで用意されているチャネル "#general" を指定する。
Message Text をクリックすると、動的なコンテンツの追加ウィンドウが表示されるので、名刺エンティティに追加されるフィールドを指定して、以下のようにする。
これで、データ追加用のワークフローが完成した。最後に、フロー名を "BusinessCard-Insert" とし、[フローの作成] をクリックする。
[完了] をクリックすると、このワークフローが使用できる状態になる。
データ更新用ワークフロー
同様にして、更新用のワークフローを作成する。作成の流れは、データ追加用ワークフローと同じだ。
最初に追加するアクションは [Common Data Service - Update a record] であり、以下のようにする。
フロー名を "BusinessCard-Update" とし、作成する。
データ削除用ワークフロー
同様にして、削除用のワークフローを作成する。
最初に追加するアクションは [Common Data Service - Delete a record] であり、以下のようにする。
フロー名を "BusinessCard-Delete" とし、作成する。
作成したワークフローの確認
PowerApps ポータルのフローを確認すると、先ほど追加したワークフローが登録されている。
接続について
メニューから [接続] をクリックすると、データソースに接続するための定義が作成されていることを確認できる。Common Data Service の接続は、データベースを作成したときに自動で作成される。Slack の接続は、先ほどのワークフロー作成時に追加したものだ。
まとめ
今回は、Microsoft Flow を使用して、PowerApps アプリから呼び出すためのワークフローを作成した。Flow は PowerApps だけが動作起点となるわけではなく、例えば「Twitter でツイートされた時」などの複数のトリガーが用意されているので、いろいろと試してみるとよいだろう。ワークフローの作成も直感的にできるため、簡単なタスクならばすぐに自動化できるのも魅力的だ。
データベースとワークフローの用意ができたので、次回は PowerApps アプリの作成と組織への公開を行ってみる。
参考文献
Flow プロセスとタスクの自動化
https://flow.microsoft.com/ja-jp/
Add multiple actions and advanced parameters to a flow
https://flow.microsoft.com/ja-jp/documentation/multi-step-logic-flow/