Power Automate

Power Automate 更新者・最終更新日時列に任意の値をセットする

  • 2024.09.20

前回は、ListView CommandSet を利用して選択したアイテムの更新者、最終更新日時、投稿者、投稿日時列に任意の値をセットする方法についてご紹介しましたが、今回は Power Automate から行う方法についてです。

完成イメージの確認

ListView CommandSet と概ね同様の動作となるように、ビューから選択したアイテムに対してボタン押下で値の設定を行うように作成します。

フロー作成

インスタントフローを作成していきます。

1.トリガーの設定

SharePoint コネクターの “選択したアイテムの場合” トリガーを利用し “サイト アドレス” と “リスト名” をボタンを配置したいリストに設定します。

2.アクションの追加

後続に、SharePoint コネクターの “SharePoint に HTTP 要求を送信します” アクションを追加します。

パラメーター
サイトのアドレス 式:
string(trigger().inputs.parameters[‘dataset’])

※ 式で、トリガーと同じサイトアドレスをセットしています。固定でも OK

方法 POST
URI GetByID の式:string(trigger().inputs.parameters[‘table’])

※ 式でトリガーで指定したリストを指定しています。固定でも OK

Items 内の動的なコンテンツ:ID (トリガー:選択したアイテムの場合より)

※ triggerBody()?[‘entity’]?[‘ID’] を指定します。ID が 2 つあるので、間違わないように利用しましょう

ボディ
{
  "formValues": [
    {
      "FieldName": "Modified",
      "FieldValue": "2024/11/03 15:00:00" },
    {
      "FieldName": "Editor",
      "FieldValue": "[{ 'Key': 'i:0#.f|membership|user02@365demo5.com'}]"
    }
  ]
}

FieldName を Author にすると登録者名、Created にすると登録日時が変更できます。

3.フローの保存

任意の名前をつけてフローを保存します。

動作確認

SharePoint リストに行き、アイテムを選択しコマンドバーより [自動化] 内に表示される自分で指定したフロー名を実行します。更新日時や更新者列が指定した値に設定されます。

まとめ

前回の PnP JS を利用したシステム列への値セットに引き続き、REST API を利用して Power Automate のフローから更新日時や更新者の値を変更する方法について記載してみました。

validateUpdateListItem を利用することで実現できるので試してみてくださいね。「リストの通常操作で行った値の変更」と「フローからシステム的に行った値の変更」を明確に区別させる必要がある場合などに役立てていただけると思います。

関連コース

お問い合わせ

イルミネート・ジャパンが提供するトレーニングやサービスに関するご相談など、
お気軽にご連絡ください。

担当者に相談する