今回はPower BIを使ってPCの在庫管理をしてみた話です。
ツールを使ってPCを管理していても行方不明のPCが発生します。私が使っているPC管理ツールでは、其々のPCに対して最後にオンラインになった日(スキャンした日[last discovered])を確認することができるのですが、行方不明なPCはしばらく放置すると探すのが大変なので、このデータを使ってPower BIで1か月以上オンラインになっていないPC数(連絡なく使われてなさそうなPC数)を定期的に通知する仕組みを作ってみました。
用意するもの
・Power BI
・PC管理ツールからダウンロードしたPC在庫データ
※PCデータの内容(例)
Asset Tag | Serial Number | Manufacture | ... | Install Status | Last Discovered | Last scanned User ID | ... |
---|---|---|---|---|---|---|---|
AABBCCDD | 1234567 | Dell | In stock | 10/5/2022 | aaa.aaa@xxx.com | ||
EEFFGGHH | 2345678 | Dell | In use | 30/8/2022 | bbb.bbb@xxx.com | ||
IIJJKKLL | 3456789 | HP | In use | 3/11/2022 | ccc.ccc@xxx.com |
処理の流れ
- Power BIデスクトップにPC在庫データをロード
- 直近1か月間以上オンラインになっていないPCの数をメジャーを作ってカウント
- Power BIデスクトップからPower BIレポートを発行
- カードビジュアルをダッシュボードに追加
- 数が0以上になっている場合に、メールで通知するように設定
手順
1.Power BIデスクトップにPC在庫データをロード
詳細説明は省きます。
2.直近1か月、オンラインになっていないPCの数をメジャーを作ってカウント
2-1. PCを使用中("In Use")のステータス([Install Status])にも関わらず、最後にスキャンした日([Last Discovered])が30日以上前の日付になっているPCの数をカウントします。
UnScanned PC =
var _30DaysAgo =TODAY()-30
Return
CALCULATE(COUNTROWS(CMDB), CMDB[Install Status]="In Use", CMDB[Last Discovered] < _30DaysAgo)
2-2. このメジャーをカードビジュアルに配置して表示させます。
3. Power BIデスクトップからPower BIレポートを発行
詳細説明は省きます。
4. カードビジュアルをダッシュボードに追加
4-1. Power BIサービス上のPower BIレポートのカードビジュアルに表示されているPinをクリックします。
4-2. 追加先のダッシュボードを確認されるので、既存のダッシュボード、もしくは新規のダッシュボードを設定し、Pinをクリックします。
5. 数が0以上になっている場合に、メールで通知するように設定
5-1. ダッシュボードに追加されたPinの右上の・・・をクリックし、Manage Alertsをクリックします。
5-2. "+Add alert rule"をクリックし、Condition(条件)とThreshold(閾値)をそれぞれ設定します。今回は1つでもあったら通知がほしいので、Above 0と設定します。
頻度(frequency)の設定もできますが、頻繁な通知は必要ないので、最大24時間毎(At most every 24 hours)に設定します。
※Alerts are only sent if your data changesと記載されているので、例えばこのデータセットが1週間に一度しか更新されないようになっている場合は、多くても1週間に1度通知されることになるはずです。
これで行方不明のPCが少なくなっていくことを切に願います。
以上です。