親フローから汎用的に呼び出せる、リストアイテムにコメントを追加する子フローを作成する方法を呼び出し方を説明します。
ソリューションの作成
Power Automate で作成した子フローを親フローから呼び出すには、親フロー、子フローともに同じソリューション内に作成する必要があります。
-
Power Automate のサイドメニューから [ソリューション] を選択します。
- [新しいソリューション] をクリックします。
- [表示名], [名前], [公開元] を入力して [作成] ボタンをクリックします。
- ソリューションが作成されます。
環境変数にサイトを登録
SharePoint のサイトを環境変数に登録しておきます。
※必須ではありませんがソリューションのエクスポート&インポートを考慮しています。
- 作成したソリューションを選択します。
- [+新規] から [その他] > [環境変数] を選択します。
- [表示名] を入力します。[名前] は自動入力されます。
- [データ型] は [データソース] を選択し、[コネクタ] で [SharePoint] を選択します。
- [接続] で管理者権限の接続を選択し、[パラメータの種類] は [サイト] を選択します。
- [現在のサイト] に環境変数として登録するサイトを選択します。
子フローの作成
作成したソリューション内に、リストアイテムにコメントを追加する子フローを作成します。
手動トリガーのフローを作成する
- 作成したソリューションを選択します。
- [+新規] から [自動化] > [クラウドフロー] > [すぐに] を選択します。
- [フロー名] を入力し、[手動でフローをトリガーします] を選択し、[作成] ボタンをクリックします。
JSON 形式でデータを受け取る
- JSON 形式でデータを受け取れるように [+入力の追加] で [テキスト] を追加します。
- [+新しいステップ] で [JSON の解析] を追加します。
- [JSON の解析] の [コンテンツ] に [+入力の追加] で追加した JSON データを指定します。
- [JSON の解析] の [スキーマ] を設定するために [サンプルから作成] をクリックします。
-
サンプルデータ を入力して [完了] ボタンをクリックします。
- [JSON の解析] の [スキーマ] が自動設定されます。
サンプルデータ
{
"ListTitle": "Announcements",
"ID": 1,
"Message": "申請を承認しますよ。",
"Mail": "admin@xxxxxxxx.onmicrosoft.com",
"Name": "管理者"
}
HTTP 要求を送信する
リストアイテムのコメントを追加するために、REST API を使用します。
サイトのアドレス
環境変数に登録したサイトを指定します。
方法
『POST』を設定します。
URL
リストアイテムのコメントにアクセスする REST API を設定します。
_api/web/lists/GetByTitle('@{body('JSON_の解析')?['ListTitle']}')/items(@{body('JSON_の解析')?['ID']})/Comments()
ヘッダー
ヘッダーに設定するキーと値です。
No. | キー | 値 |
---|---|---|
1 | Accept | application/json;odata=verbose |
2 | Content-Type | application/json;charset=UTF-8 |
ボディ
ボディに JSON 形式でコメントに追加するメッセージを設定します。
{
"text": "@mention{0} @{body('JSON_の解析')?['Message']}",
"mentions": [
{
"email": "@{body('JSON_の解析')?['Mail']}",
"name": "@{body('JSON_の解析')?['Name']}"
}
]
}
子フローとして呼び出すための設定
PowerApp または Flow に応答する
子フローとして呼び出せるようにするために、応答を返すようにします。
注意
条件分岐して終了するような子フローを作成する際は、終了アクションの前に [PowerApp または Flow に応答する] アクションを追加するのを忘れないこと!
子フローからの応答が返ってこないと、タイムアウトエラーになります。
実行専用アクセス許可を管理
使用する接続の設定が実行専用ユーザーの場合、親フローから呼び出した際に以下のようなエラーになります。
接続の設定に管理者の権限のユーザを使用します。
- [実行のみのユーザー] の [編集] をクリックします。
- [実行専用アクセス許可を管理] の [使用する接続] > SharePoint に『実行専用のユーザーによって提供されました』が設定されています。
- 実行するユーザーを選択して OK ボタンをクリックします。
1. 実行するユーザーが設定されたら、[保存] ボタンをクリックします。
親フローからの呼び出し
親フローから呼び出す方法です。
参考サイト
- Power Automate から SharePoint リスト のコメントを追加する - MoreBeerMorePower (hatenablog.com)
- ソリューションに対応したフローの概要 - Power Automate | Microsoft Docs
- Power Apps + Power Automate + Sharepoint で管理者のみ更新可能なリストとアプリを作成する - Qiita
- PowerAutomate PowerAutomateは共通機能を関数化できるのか?? | 仕事のあれこれ (ippu-biz.com)
- Power Automate で「終了」「スコープ」を活用し、見た目をすっきりさせよう - Qiita