Loading...

SharePointのリストで会議室を予約してPower AutomateでTeamsに自動通知

Power Automate

概要

SharePointのリストで会議室を予約すると、Teamsに通知するという簡単なフローです。
重複回避や繰り返し機能などの設定はできないので、少人数の会社で「○月○日に会議室使うよー」的にTeamsで社内にお知らせするぐらいのものだと思ってください。
ちなみに弊社では実際に利用しています。

SharePointでリスト作成

任意のSharePointサイトで[空白のリスト]でリストを作成。

ダイアログが表示されるので、名前を入力(作例では「会議室予約リスト」)し、[作成]をクリック。

[列の追加]で下記の列を追加。

  • 開始日時(日付と時刻)
    • この列への情報の入力を必須にする: 「はい」を選択
    • 日付と時刻の形式: 「日付と時刻」を選択
  • 終了日時(日付と時刻)
    • この列への情報の入力を必須にする: 「はい」を選択
    • 日付と時刻の形式: 「日付と時刻」を選択
  • 使用者(選択肢)
    • この列への情報の入力を必須にする: 「はい」を選択
    • それぞれの行に選択肢を入力してください:使用者の名前ごとに改行して記載

ビューの変更

右上のメニューの[すべてのアイテム]から[新しいビューを作成する]を選択。

ダイアログが表示されるので、ビュー名を記載し(作例では「予定表ビュー」)、表示方法を[予定表]を選択して、[作成]をクリック。

リストがカレンダー表示になりました。

PowerAutomateでフロー作成

PowerAutomateの[作成]で[自動化したクラウドフロー]を選択。

フロー名を入力(作例では「会議室予約フロー」)、フローのトリガーを[項目が作成されたとき]を選択し、[作成]をクリック。

設定したアクションはこんな感じです。順番に説明します。
※各アクションの名前は、分かりやすくするために、デフォルトから変更しています。

項目が作成されたとき
該当SharePointサイトとリストを登録。

開始日時変換
[開始日時]列に入力された値を日本時間に変換。書式設定も変更しています。
※後ほどyyyy年を省くのに、ここで記載しているのは、翌年の開始日時をうまく取得できなかっため、あえてyyyy年も取得している。

終了日時変換
[終了日時]列に入力された値を日本時間に変換。書式設定は時間のみ取得するようにしています。

開始日時(年省略)
通知するときに、M月d日から始めたかったので、yyyy年より後ろの要素を取得する式を書いて変数に格納しています。

last(split(body('開始日時変換'),'年') )

last関数
配列(アレイ)または文字列の最後の要素を返します。

split関数
テキストを指定の区切り記号で分割して配列(アレイ)に変換します。

終了時間
終了日時変換の値を変数に格納。あえて変数にする必要もないけれど…。

曜日
これが一番苦労しました。Power Automateには曜日を漢字一文字で取得する動的なコンテンツがないので、下記の式を書いて変数に格納しています。

createArray('日','月','火','水','木','金','土')[dayOfWeek(body('開始日時変換'))]

下記の記事を参考にしました。ありがとうございます!
Microsoft Power AutomateやIntegromatで曜日を漢字1字で出力する

カレンダー
会議の予約状況をカレンダー表示で確認したいときのために、リストのアドレスを記載して変数に格納。

チャットまたはチャネルでメッセージを投稿する
該当Teamsに自動投稿する内容を記載。上記で各要素を変数にしていると挿入が楽です。

投稿確認

リストにアイテムを新規作成します。

しばらく経つと(作成するタイミングによるが長くて5分ぐらい)、Teamsに投稿されます。

即時反映されない理由は下記をご参照。

トリガーが発生するまでに遅延があります。

トリガーがポーリング トリガーの場合、定期的に起動して、新しいイベントが発生したかどうか確認します。 起動時間は、フローが実行されるライセンス プランによって異なります。

たとえば、無料 ライセンス プランの場合、フローを実行できるのは 15 分ごとになります。 無料 ライセンス プランで、前回の実行から 15 分が経過しないうちにクラウド フローがトリガーされた場合、フローは 15 分が経過するまでキューに入れられます。

トリガーでの一般的な問題のトラブルシューティング

以前は、手動でTeamsに入力して会議室の予約をお知らせしていたので、人によって書き方が異なっていたり、入力も手間だったり、カレンダー表示で見られなかったりしたので少しは効率化できたかと思います。


陸風社では、SharePointややPower Automateを利用したイントラネットサイトの構築や印刷物・Webコンテンツも制作いたします。
陸風社の会社概要、業務内容、実績、お問い合わせ等は下記のサイトを御覧ください。

株式会社 陸風社

タイトルとURLをコピーしました