【Power Automate】SharePointのリストのアイテムをゴミ箱に入れずに削除する方法

1 min
【Power Automate】SharePointのリストのアイテムをゴミ箱に入れずに削除する方法

記事内に広告を含む場合があります。このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。問題のある表現がありましたら、お問い合わせいただけますと幸いです。

SharePointリストのアイテムをゴミ箱に入れずに削除する方法を紹介していきます。

HTTPアクションで削除する方法を紹介していきます。

項目の削除ではなく、HTTPアクションを利用する

SharePointリストのアイテムを削除するのであれば、通常の「項目の削除」というアクションで機能としては十分そうに見えます。

「項目の削除」ではSharePointのゴミ箱に収納され、大量のアイテムを削除するとゴミ箱が圧迫されてしまいます。それを回避するためにHTTPアクションで削除する必要性が発生し、対応しました。

全体の流れ

  1. STEP

    複数の項目の取得

    SharePointのリストの削除する項目を取得します。

  2. STEP

    SharePoint に HTTP 要求を送信します(Apply to eachで繰り返し)

    「SharePoint に HTTP 要求を送信します」で取得した削除する項目を削除します。

解説

全体図

「複数の項目の取得」

削除したいリストのアイテムを取得します。必要に応じて、フィルタークエリ等を使って削除したいアイテムだけに絞っておきます。

「SharePoint に HTTP 要求を送信します」

削除したいサイトのアドレスを指定し、方法は「DELETE」を選択。

URIには下記を指定します。

_api/web/lists/getbytitle('【リストID】')/items('【アイテムID】')

その下のヘッダー部分には下記を入力します。

{
    "Accept": "application/json;odata=verbose",
    "Content-Type": "application/json;odata=verbose",
    "If-Match": "*",
    "": ""
}

参考

ふー

ふー

Microsoft Power Platformを使ったり、ガジェットを買ったり、アニメ見たり、バイクに乗ったり、色々しています。

FOLLOW

関連記事

5 件のコメント

  1. 質問があります。
    アイテムではなく、フィールドを削除する場合も同じような手順で可能でしょうか。

    • はい、フィールドを削除する場合も同様です。
      URIの部分リストIDまでにすれば、フィールドを削除できます。

      • お返事ありがとうございます。
        とすると、URIは「_api/web/lists/getbytitle(‘【リスト名】’)/fields(‘【フィールドID】’)」となるように思ったのですが、フィールドIDはどこを参照すればわかるでしょうか💦
        基本的な質問ばかりですみません。
        よろしくお願いいたします。

        • すみません、フィールドを勘違いしていました。
          SharePointリストの列のことでしょうか。

          列のIDはこちらの記事が参考になるかと思います。
          https://jpdynamicscrm.github.io/blog/powerautomate/Look-up-internal-column-names-in-SPO/

          ただ、フィールドの削除はPower Automateからは難しいかもしれません。
          Azure上でアプリを登録し、アクセストークンを発行すれば可能かもしれません。

          また、Power Automateを使ってSharePointリストのフィールドを削除するシチュエーションが思い浮かばないのですが、定期的に実行するようなもので無ければ手動削除でも良いのかもしれません。

          • ありがとうございます。
            内部列名がフィールドIDなのですね。

            パワーオートメイトからは難しいとのことで、一度試してみてできなければ、別の運用を考えてみます…

            シチュエーションとしては、
            リストテンプレートにある「承認付き出張申請」リストの承認機能(approve status列をクリックすると承認アプリと連携して承認申請ができる)をカスタマイズし、ひながた化して組織内で共有したいのですが、
            自分でカスタマイズしたリストを、「既存のリストから作成」機能を利用して作り直すと、承認機能が利用できなくなる(approvestatusが単なる整数列として作成されてしまい、承認アプリと連携できない)ことから、パワーオートメイトで元の「承認付き出張リスト」から不要な列を削除し、必要な列を作成することで、擬似的なテンプレートとして利用しようとした次第です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA