【Power Apps】「人事DBアプリ」のご紹介

目次
こんにちは、MS開発部の石幡です。
皆様は現在、人事管理をどのように行っていますでしょうか?
人事管理もMicrosoft Power Appsを活用することで、Microsoft Power Platformのさまざまなサービスと連携して運用することが可能です。
今回は、Microsoft Power Appsで作成した人事管理についてご紹介します。
人事管理業務
人事管理は社員の個人情報や勤務情報、資格情報などのデータを取り扱い、
社員の情報やスキルを把握する非常に重要な業務です。
管理方法には紙ベースやExcelシート、人事管理システムなどがあります。
しかし、紙ベースやExcelを用いた人事管理では 管理・活用時の紛失や誤送信などのセキュリティ面に
懸念が発生します。
また、必要なデータを検索する際の手間、データの一元管理が困難であるなど、業務効率が悪く、
余計な工数がかかってしまいます。
そこで社内業務DXの一環として、Power Appsを用いた人事管理アプリを作成しました。
使用した製品は以下の3つです。
- Microsoft Power Appsモデル駆動型(以下、「モデル駆動型」)
- Microsoft Dataverse(以下、「Dataverse」)
- Microsoft Power Automate(以下、「Power Automate」)
※DXとは
デジタルトランス・フォーメーションの略称であり、データやデジタル技術を活用することで、
新しい価値を生み、あるいは業務プロセスや組織を変革し、競争上の優位性を確立することです。
※モデル駆動型アプリとは
Power Appsアプリの一つで、管理者向けのWebベースアプリケーションです。
ノーコードが特徴で、データの構成方法を設定することでアプリを作成できます。
入力データからグラフの作成も可能で、必要な情報に合わせたレイアウトに変更できます。
より詳細をお知りになりたい場合は
Microsoft公式サイト
よりご確認いただけます。
人事DBアプリ詳細
今回は、作成した人事DBアプリを以下の7つに焦点を当てて紹介していきます。
- Dataverseで人事データを管理
- Excelを利用したデータの一括インポート
- Power Appsモデル駆動型で人事データの可視化
- Azure ADとの連携
- 入退職処理工程のフロー管理
- Power Automateによるメールの自動送信機能
- ソリューション環境変数
1. Dataverseで人事データを管理
人事担当者は社員情報や資格情報、給与明細などのデータをアプリからDataverseに保存します。
データはマスタデータをあらかじめ登録し、その後に社員データを登録します。
その際、プライマリ列である社員番号は一意で設定します。
管理するデータ一覧
マスタデータ
部署マスタ:部署ID、部署名など
等級マスタ:等級ID、等級名、等級詳細など
役職マスタ:役職ID、役職名など
資格マスタ:資格ID、資格名、難易度、報奨金など
社員データ
社員情報テーブル : 氏名、入社日、部署ID、等級ID、メールアドレスなど
社員個人情報テーブル: 住所、緊急連絡先、婚姻、保険証No.など
家族構成テーブル : 家族の氏名、同居有無、年収、扶養有無など
家賃補助テーブル : 社員の家賃、家賃補助支給額、支給期間など
勤務テーブル : 勤務地、役職ID、担当職務など
資格取得テーブル : 資格ID、点数、資格取得日、有効期限など
給与明細テーブル : 支給日、支給額、出勤日数、控除額など

例:社員情報テーブル ビュー

例:社員情報テーブル フォーム
2. Excelを利用したデータの一括インポート
データの登録方法は手入力のほか、Excelを利用したデータの一括インポートを行うことができます。
その際、Excelの1枚目のシートのデータのみがインポートされるため、登録したいデータは先頭の
シートに入力します。
また複数テーブルのデータを登録したい場合は、その都度該当のテーブルのビューからインポートを
行います。
※Excelシートはアプリを開き、インポートを行いたいテーブルのビューからエクスポートしたものを
使用すると便利です。

例:インポート用に社員情報テーブルのデータを入力したExcelシート

社員情報テーブルへのExcelシートのインポート方法
3. Power Appsモデル駆動型で人事データの可視化
集めたデータを基に社員データをグラフにして、ダッシュボードを作成しました。
グラフを作成する方法としては、Dataverseの標準機能で作成する、またはPower BIを使用して作成する
2種類の方法があります。
今回はDataverseの標準機能で作成しましたが、Power BI Pro ライセンスを別途用意することで、
Power BIを用いてより複雑な条件を指定してグラフィカルに表現することも可能です。
今回、ダッシュボードには以下のグラフを作成いたしました。
- 部署別所属人数
- 月平均有給休暇取得日数
- 月別平均出勤・テレワーク日数

月別平均出勤・テレワーク日数(モデル駆動型)

部署別の月別平均出勤・テレワーク日数(Power BI)
4. Azure ADとの連携
モデル駆動型アプリで特定のデータを変更した際、Power Automateフローを利用して
Azure Active Directory(以下Azure AD)のデータを連動して変更することが可能です。
例えば、社員名や部署、役職といったデータを変更します。
また、退職時にAzure ADアカウントの有効化をいいえにすることも可能です。

Azure ADの社員データ
※Azure ADとは
クラウドによる認証・認可の一元管理サービスで、Microsoft Azureの1つのサービスとして提供されて
おり、2022年6月からは総合的なアクセス管理ソリューションである「Microsoft Entra」の一部としても
提供されています。
Azure ADについてより詳細をお知りになりたい場合は
Microsoft公式サイト
をご覧ください。
5. 入退職処理工程のフロー管理
Power Appsモデル駆動型に搭載されている「ビジネスプロセスフロー」を活用することで、入退職処理
工程の進捗を管理することができます。
進捗の管理方法
入社処理または退職処理のビューを開き、既存のレコードをクリックするとフォームが開きます。
フォームの上部に入退職処理のフローが表示されるため、処理が完了した項目の確認者名を入力します。
確認者名を登録した時点の日時が自動で確認日として登録されます。
※確認者名の変更は可能ですが、確認日は最初に登録した時点から変更されません。
また、入社処理が完了したレコードの確認者名は変更ができないようになっています。

入社処理を行う際に使用するビジネスプロセスフロー
確認日を一覧で確認することができます。
退職処理テーブルも同様です。

入社処理中の社員一覧を表示するビュー
6. Power Automateによるメールの自動送信機能
Power Automate フローを作成することで、入退職処理を行う際の他部署への作業依頼の自動化や
入退職処理の未完了者通知を行うことができます。
例えば、入退職処理の特定の項目完了時は、次の工程を行う部署や担当者に自動でメールが送信
されます。
また、入退職処理が完了していないレコードが存在する場合は、特定の周期毎に完了していない
レコードの社員名を一覧通知するメールが送信されます。

例:入社処理が完了していない社員名の一覧通知メール
7. ソリューション環境変数
人事DBアプリでは、Power Automate のフローとPower Appsのモデル駆動型アプリで環境変数を使用
しています。
※環境変数とは
名前の通り、環境(ソリューション)内で使用できる変数のことで、
環境変数として値を設定することで導入時の設定 が容易になります。
なお、前提条件としてソリューションを作成する必要があります。
今回、以下5つの環境変数を作成しました。
- 「家賃補助支給上限金額」 : 家賃補助支給金額の上限額
- 「家賃補助支給割合(小数)」: 家賃補助の自動計算で利用する、家賃補助の支給割合
- 「家賃補助支給期間(年)」 : 家賃補助の自動計算で利用する、家賃補助の支給期間
- 「連携用メールアドレス」 : 入退職処理フロー進行時に、次の業務を依頼する連絡先
- 「進捗通知用メールアドレス」: 入退職処理状況の進捗を一覧通知する連絡先


まとめ
今回はPower Appsモデル駆動型アプリ「人事DB」についてご紹介いたしました。
ご興味ありましたら下記もご一読いただければ幸いです。
■Power Platform サービス紹介
Power Platform DX推進
Power Platform 導入支援サービス
■製品紹介
Power Apps 人事DBアプリ
■資料ダウンロード
Power Apps 人事DBアプリ
また、今回ご紹介させていただいたアプリケーションや、
Power Platformについて興味をお持ちいただいた方は、下記からご連絡ください。
ここまでお読みいただき、誠にありがとうございました。
以上、最後までご愛読いただき
ありがとうございました。
お問い合わせは、
以下のフォームへご連絡ください。