私が作成したPower Apps 業務活用事例のサンプルを紹介します。
Outlook予定を一覧表示するアプリ
このアプリの主な特徴
- 任意の複数人のスケジュールを一覧表示する
- 予定は30分ごとに最新のものに自動反映
- 今日を含めて先6日間に対応
- 出社人数を動的にグラフ表示
- 部署を切り替えて表示可能
- 予定に合わせて動的に色とテキストが変更
このアプリのいまいちな点
- 見せられる予定は1日1件
- Power Automateの設定が手間
- 上限30人が目安
作った背景
コロナを機に私の会社ではテレワークが始まり、出社人数が減少しました。
社内で蔓延を防止するため、部署ごとに出社人数の上限が設けられたのですが、全員のOutlookスケジュールを見て何人出社するか確認する手間があり、パッと把握しづらい状況でした。
そこで、Power Apps から出社人数を視覚的に把握し、誰が出社し、誰がテレワークかわかるアプリを作ろうと思ったのがきっかけです。
土日であっても、アプリを見れば誰が出社か確認しやすいという特徴もあります。
言い訳
実はこのアプリ、私が Power Platform に触れ始めて2番目に作ったものです。
当時は経験が浅く、いま見返すとどうしてこんな面倒な作り方をしたのか頭を悩ませるのですが、それも自身の成長の証としてそのまま紹介します。
最も工夫した点
関係者のスケジュールを Power Automate で自動取得する方法を工夫しました。
全員のPC1台1台から Power Automate を設定し、30分間隔で最新の予定6日分をリストに投稿するようにしたのです。そうです、力技です。
23年10月頃まで、スマホのOutlookアプリに他人のスケジュール表を追加するだけで Power Automate で取得できる仕様でした。
ですので他人の予定を自動取得するのは意外と簡単だったのですが、アップデートでこの方法が使えなくなり、このアプリの根幹を揺るがすことになります。
色々と調べたところ、スケジューラーの編集権限を私に付与してもらえれば全て解決らしいのですが、例え同じ部署の人であってもそれを快くOKしてくれる人はまずいません。
会社のポリシーでそれが禁止されていることもありますし。
自分自身のスケジュールならPower Automateで自動取得可能です。
それなら全員にPCを借りて同じフローを設定すればいけるのではないかという、保守性をガン無視した強硬策を実施しました。
その他の特徴
出社人数のグラフ表示
棒グラフ
その日、[出社]というキーワードをカウントしてグラフが動的に変化します。
土・日・祝は非表示になります。
最上段の出社人数
その日、[出社]というキーワードをカウントしてその数が表示されます。
土・日・祝は0になります。
日付と曜日
アプリを開いた日と曜日を起点にし、その日を含めて先6日間を表示します。
赤い線
これは出社可能人数(6割)の箇所に四角形を変形して配置しています。
背景のグラフ枠
これは画像貼り付けです。
Excelでシンプルなグラフ枠を作成し、それを最背面に配置し、前面にその他の要素を配置しています。
スケジュール
予定の表示
Power Automate を使ってリストに個人のスケジュールを吸い上げます。
それらのタイトルから判断し、[出社][TW][出張][休]を色別に表示しています。
土・日・祝は強制的に[休]が表示されます。
氏名
所属する人の名前が入っています。
反省点
Galleryを使えばもっとシンプルに作れたかもしれませんが、当時の私は1つずつLabelで作っています。
人が増えれば増えるほどコントロールが増えてしまい、アプリが重たくなる要因の1つです。
部と課のボタン
関係する人数が多ければ、これらのボタンのように課でわけて表示する機能があってもいいでしょう。
アプリを作ったことでの気付き
繰り返し表示するものはGalleryを使う
スケジュール表示のように、名前や予定が繰り返し表示されるような箇所にはGalleryが適していると感じます。
1つ目のGallery(縦)で人の名前を表示し、そこにGallery(横)を入れ子にして予定表示させれば、もっと軽くシンプルに設計できるかもしれません。
データソースが多すぎるのは問題
私が実際に会社で使っているものは35前後のリストをデータソースに設定しています。
Power Apps が推奨するデータソースの上限は30ですので、それを越えています。
その影響か、Power Apps Studio(開発画面)がめちゃくちゃ重たいです。
視覚に訴えるものは強い
出社人数のグラフ表示、個人の予定の色付けのように、視覚に訴えるコンテンツは視認性が良く、周りから高い評価を受けています。
削ぎ落とすことも大切
予定が1件しか表示できませんが、そもそもこのアプリの目的は出社人数を把握するためのものなので、そこは割り切って正解だったと思います。
あれもこれもと機能をつけたくなるのはわかりますが、まずは少ない機能でリリースし、本当に必要であれば少しずつ追加するぐらいがいいのかと。