SharePoint フォルダ内に新しいファイルが作成されたとき一定の期間が過ぎたファイルを削除する
Power Automate を利用して、 SharePoint フォルダに保存されているファイルのうち一定の期間が過ぎているものを削除するフローを作成してみましょう。
これは例えば FAX を受信した際に紙へプリントせずに PDF として SharePoint フォルダ上に保存している場合などで有効です。新たなファイルが作成された際に一定期間を過ぎたファイルを消していくことでファイルのたまり過ぎを防ぎます。特に SharePoint は多すぎるデータを処理しきれなくなることがあるので定期的な削除が有効です。
- フォルダー内にファイルが作成されたとき(非推奨)
- ファイルの取得(プロパティのみ)
- Apply to each
- ファイルプロパティの取得
- 条件
- 真:ファイルの削除
- 偽:なし
1.フォルダー内にファイルが作成されたとき(非推奨)
まずはトリガーとして『フォルダー内にファイルが作成されたとき(非推奨)』を選択します。非推奨となっていますがこれで動作を確認したためこのまま使用します。もしその他動作するトリガーを見つけた場合はそれを使用してみてください。
『サイトのアドレス』で該当するものを選択してください。SharePoint 上にフォルダを作成しあれば候補が表示されるはずです。
2.ファイルの取得(プロパティのみ)
ここでフォルダ内のすべてのファイルのプロパティを取得します。ここで取得したプロパティは配列として取得されます。
ライブラリ名はファイルが保存してあるフォルダを指定します。
3.Apply to each
ここでフォルダ内のファイルの数だけ処理を繰り返す枠を作ります。『Select an output from previous steps(前の手順からの出力を選択します)』の部分は動的コンテンツから『body/value』を選択します。これは上記の『ファイルの取得(プロパティのみ)』で取得したアイテムの値を参照するということです。
4.ファイルプロパティの取得
Apply to each の枠内に『ファイルプロパティの取得』を設定します。先ほどとは違い今度は個別のプロパティを取得します。
5.条件
次は条件を設定します。条件に一致すれば『真』の処理を一致しなければ『偽』の処理を行います。
- 図で表示が『Created』となっていますがここは『ファイルプロパティの取得』から『登録日時』を選択します。
- 比較演算子は『is less than(未満)』を選びます。
- 右側の項目は『fx』で『addDays(utcNow(), -30, ‘yyyy-MM-dd’)』と入力しましょう。このコードは、現在の日付から30日前の日付を計算し、その結果を特定の形式で表示するという意味です。
6.真:ファイルの削除
『ファイルの削除』アクションを追加し、サイトアドレスを指定。ファイル識別子は『ファイルのプロパティの取得』から『識別子』を選択します。
7.偽
何も指定する必要はありません。この条件に一致しないもの(現在の日付から30日経過していないファイル)はすべて処理を行わずに終了します。