Power Automate お助けレシピ集

承認フローを作成する(うまくいかない方法)

公開日: 2025-08-16|カテゴリ: 承認ワークフロー|難易度: 中級

解決できる課題

SharePointにアップロードされたファイルを、Teamsと連携して、承認プロセスを自動化します。

完成イメージ

Flowchart for 承認フローを作成する(うまくいかない方法)

必要なもの

  • SharePoint コネクタ
  • Standard approvals コネクタ

作り方

これは失敗例です。
同じようなやり方を考えている方は、最下部の代案を検討してください。

 

SharePointのドキュメントにファイルがアップロードされると、Teamsの承認プロセスが起動。
担当者が承認/拒否をすることで、ファイルの「承認の状態」を自動で変更します。

 

  • 1. トリガー「ファイルが作成または変更されたとき (プロパティのみ)」を設定

[サイトのアドレス]は、承認用のファイルをアップロードするサイトにします。
[ライブラリ名]は「ドキュメント」にします。 ※これが原因でうまくいきません
ライブラリ名がドキュメントではうまくいきません

 

  • 2. アクション「ファイル メタデータの取得」を設定

[サイトのアドレス]は、トリガーと同じものにします。
[ファイル識別子]は「識別子」にします。
 ※「ID」はリストアイテム用のため、エラーが発生します。「識別子」はドキュメント用です。
 ※ファイルのメタデータについて知りたい方はこちら ドキュメントの場合は識別子を指定します

 

  • 3. アクション「開始して承認を待機」を設定

[承認の種類]は任意のものを選択します(例えば、最初に応答した人が決める、全てのユーザーの決定が必要など)。
[タイトル]は、項番1で取得したファイルの「名前」を入れておくと、承認フローで区別をつけやすいです。 タイトルはどの商人化を分かりやすく明記します

 

  • 4. 条件を設定

項番3の承認/拒否に従い、フローを分岐させます。
 ※outputs('開始して承認を待機')?['body/outcome']を入力
このoutputsの戻り値はApprove/Rejectなので、「Approve」を入力し、True/Falseを判定します。 条件のキーワードはApprove

 

  • 5. アクション「コンテンツの承認状態を設定します-Approve」を設定 ※Reject側も同じ

大切なポイントは3つあります。
まず、[操作]は項番4の条件と合わせ、「Approve」がTrueなら「Approve」にします。
 ※Falseの側は「Reject」になります
[Etag]は、項番2で取得したメタデータに含まれ、SharePointでのファイル操作に必要なものです。
 ※outputs('ファイル_メタデータの取得')?['body/ETag']を入力、Etagは【Entity Tag】の略
[ID]は、承認/拒否をするファイルを一意に決めるものです。
 ※outputs('ファイル_メタデータの取得')?['body/ItemId']を入力 ApproveとRejectは同じ設定です

 

これではうまくいきません!

うまくいかない理由は、項番2の[ファイル識別子]と項番5の[ID]が、異なる性質を持つからです。
上述の通り、[ファイル識別子]はドキュメント用で、「identifier」(ファイルID)を指します。
[ID]はリスト用で、「ItemId」(リストアイテムID)を指します。
同じIDでも用途が異なるため、このフローではエラー(ETagがnull)となります。
つまり、両方のアクションで同じID種別を使う必要があります。

 

結論

ドキュメントライブラリのファイル承認は、現状のコネクタ仕様では制限があるようです。
Power Automateで安定して承認フローを自動化するには、リストアイテムを使うのが最適となります。
 ※Mircosoft公式のやり方はこちら
 ※ドキュメントライブラリでの承認機能の有効化はこちら

関連レシピ