Slide 1

Slide 1 text

PowerAutomateによる 社員健康情報集計システムの作り方 Sota Masuda

Slide 2

Slide 2 text

目次 • はじめに:作りたいシステムの全体像 • はじめに:PowerAutomateの基本 • 準備 :Formsで社員健康情報アンケートを作る • 準備 :Excelでデータを管理する為のテーブルを作る • 本編 :PowerAutomateで社員健康情報集計システムを作る

Slide 3

Slide 3 text

目次 • はじめに:作りたいシステムの全体像 • はじめに:PowerAutomateの基本 • 準備 :Formsで社員健康情報アンケートを作る • 準備 :Excelでデータを管理する為のテーブルを作る • 本編 :PowerAutomateで社員健康情報集計システムを作る

Slide 4

Slide 4 text

作りたいシステムの全体像

Slide 5

Slide 5 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ

Slide 6

Slide 6 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ ①健康情報を入力

Slide 7

Slide 7 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ ②入力内容をサーバーに送信

Slide 8

Slide 8 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ ③アンケートの送信を感知+情報取得 ・健康情報 ・メールアドレス ・送信日時

Slide 9

Slide 9 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ ④メールアドレスをキーとして部署名・氏名を取得

Slide 10

Slide 10 text

作りたいシステムの全体像 社員 社員健康情報アンケート 集計フロー データベース メイン 社員情報 ログ アンケート送信先 (Formsサーバー) データの流れ ⑤メインテーブルとログテーブルに情報を設定 更新 追加

Slide 11

Slide 11 text

はじめに~PowerAutomateの基本~ 1. PowerAutomateのはじめかた 2. PowerAutomateでのフローの作り方 3. PowerAutomateについて学ぶための教材

Slide 12

Slide 12 text

1. PowerAutomateのはじめかた

Slide 13

Slide 13 text

1. PowerAutomateのはじめかた Microsoft Store から Office をダウンロードします (Office365アプリのハブみたいなもの。便利なのでおススメ。)

Slide 14

Slide 14 text

1. PowerAutomateのはじめかた Office を起動して、PowerAutomate のアイコンをクリック

Slide 15

Slide 15 text

1. PowerAutomateのはじめかた ブラウザが起動して、PowerAutomateのホームが表示されます (場合によっては、サインインが求められます)

Slide 16

Slide 16 text

2. PowerAutomateでのフローの作り方

Slide 17

Slide 17 text

2. PowerAutomateでのフローの作り方 「作成」を選択

Slide 18

Slide 18 text

2. PowerAutomateでのフローの作り方 「空白から開始」―「自動フロー」を選択

Slide 19

Slide 19 text

2. PowerAutomateでのフローの作り方 「フロー名」を入力、「トリガー」を選択して、「作成」

Slide 20

Slide 20 text

2. PowerAutomateでのフローの作り方 先ほど選択した「トリガー」が表示されます 「新しいステップ」からアクションを選択します

Slide 21

Slide 21 text

2. PowerAutomateでのフローの作り方 先ほど選択した「トリガー」が表示されます 「新しいステップ」からアクションを選択します

Slide 22

Slide 22 text

2. PowerAutomateでのフローの作り方 「SharePointで項目が作成された」時 「Teamsにメッセージを投稿する」場合の例

Slide 23

Slide 23 text

2. PowerAutomateでのフローの作り方 「SharePointで項目が作成された」時 「Teamsにメッセージを投稿する」場合の例

Slide 24

Slide 24 text

2. PowerAutomateでのフローの作り方 「SharePointで項目が作成された」時 「Teamsにメッセージを投稿する」場合の例 目的に応じて、 細かい設定を入力していきます

Slide 25

Slide 25 text

3. PowerAutomateについて学ぶための教材

Slide 26

Slide 26 text

3. PowerAutomateについて学ぶための教材 Microsoftの公式ドキュメントを読みましょう https://docs.microsoft.com/ja-jp/power-automate/

Slide 27

Slide 27 text

3. PowerAutomateについて学ぶための教材 学習用コンテンツも揃っています https://docs.microsoft.com/ja-jp/learn/paths/automate-process-power-automate/

Slide 28

Slide 28 text

目次 • はじめに:作りたいシステムの全体像 • はじめに:PowerAutomateの基本 • 準備 :Formsで社員健康情報アンケートを作る • 準備 :Excelでデータを管理する為のテーブルを作る • 本編 :PowerAutomateで社員健康情報集計システムを作る

Slide 29

Slide 29 text

準備:Formsで社員健康情報アンケートを作る アンケートで入力してもらう情報 体温(必須項目) その他特記事項(任意項目) その日に測った体温を入力してもらいます 入力の煩雑さ抑制の為、選択式にします その日の体調について一言コメントを入力してもらいます 入力の自由度を高める為、自由入力形式にします

Slide 30

Slide 30 text

準備:Formsで社員健康情報アンケートを作る 出来上がったアンケート

Slide 31

Slide 31 text

目次 • はじめに:作りたいシステムの全体像 • はじめに:PowerAutomateの基本 • 準備 :Formsで社員健康情報アンケートを作る • 準備 :Excelでデータを管理する為のテーブルを作る • 本編 :PowerAutomateで社員健康情報集計システムを作る

Slide 32

Slide 32 text

用意するテーブルは三つ

Slide 33

Slide 33 text

準備:Excelでデータを管理する為のテーブルを作る メインテーブル 社員情報テーブル ログテーブル 用意するのは下記の三つのテーブルです。() 内はExcel上でのテーブル名 ( health_reports ) ( users ) ( health_reports_log )

Slide 34

Slide 34 text

準備:Excelでデータを管理する為のテーブルを作る NOTE PowerAutomateから操作できるようにするために、 Excelファイルは、OneDrive上に作成しましょう。 今回は、社内グループ「情報ポータル」のフォルダに作成します。 メインテーブル 社員情報テーブル ログテーブル ( health_reports ) ( users ) ( health_reports_log ) 用意するのは下記の三つのテーブルです。() 内はExcel上でのテーブル名

Slide 35

Slide 35 text

準備:Excelでデータを管理する為のテーブルを作る メインテーブルは、集計結果を確認する為のテーブルです。 列名 型 内容 メールアドレス 文字列 社員のメールアドレス 部署名 文字列 社員の所属部署 名前 文字列 社員の名前 体温 文字列 社員の入力時の体温 体調 文字列 社員の体調に関するコメント 入力日時 日時(YYYY/MM/DD hh:mm) 当該情報をFormsから送信した時刻 メインテーブル 社員情報テーブル ログテーブル ( health_reports ) ( users ) ( health_reports_log )

Slide 36

Slide 36 text

準備:Excelでデータを管理する為のテーブルを作る 社員情報テーブルは、社員の基本情報を記したマスタデータです。 列名 型 内容 ユーザーID 文字列 社員ID 氏名 文字列 社員の名前 メールアドレス 文字列 社員のメールアドレス 部署 文字列 社員の所属部署 メインテーブル 社員情報テーブル ログテーブル ( health_reports ) ( users ) ( health_reports_log )

Slide 37

Slide 37 text

準備:Excelでデータを管理する為のテーブルを作る ログテーブルは、集計結果の履歴を保存するテーブルです。 列名 型 内容 メールアドレス 文字列 社員のメールアドレス 部署名 文字列 社員の所属部署 名前 文字列 社員の名前 体温 文字列 社員の入力時の体温 体調 文字列 社員の体調に関するコメント 入力日時 日時(YYYY/MM/DD hh:mm) 当該情報をFormsから送信した時刻 メインテーブル 社員情報テーブル ログテーブル ( health_reports ) ( users ) ( health_reports_log )

Slide 38

Slide 38 text

エクセルでテーブルを作る方法(表ではない)

Slide 39

Slide 39 text

準備:Excelでデータを管理する為のテーブルを作る ① 列名を入力する

Slide 40

Slide 40 text

準備:Excelでデータを管理する為のテーブルを作る ② 列を選択して、テーブルを作る

Slide 41

Slide 41 text

準備:Excelでデータを管理する為のテーブルを作る ③ テーブル名を設定する ※必須ではないですが、推奨します

Slide 42

Slide 42 text

準備:Excelでデータを管理する為のテーブルを作る ③ テーブル名を設定する ※必須ではないですが、推奨します

Slide 43

Slide 43 text

目次 • はじめに:作りたいシステムの全体像 • はじめに:PowerAutomateの基本 • 準備 :Formsで社員健康情報アンケートを作る • 準備 :Excelでデータを管理する為のテーブルを作る • 本編 :PowerAutomateで社員健康情報集計システムを作る

Slide 44

Slide 44 text

(やっと)作り方

Slide 45

Slide 45 text

本編:PowerAutomateで社員健康情報集計システムを作る 作るのは全部で8つのステップ 一つずつ見ていきましょう ① ② ③ ④ ⑤ ⑥ ⑦ ⑧

Slide 46

Slide 46 text

① アンケートの送信を感知する 1 2 3 4 5 6 7 8 感知したいフォームのIDを入力します 準備の際に作成した「みんなの健康状態調査」を選択します

Slide 47

Slide 47 text

② アンケートの送信情報を取得する 1 2 3 4 5 6 7 8 詳細を取得したいフォームのIDと 取得したい情報(応答ID)を選択します

Slide 48

Slide 48 text

③ 送信日時のタイムゾーンを変換する 1 2 3 4 5 6 7 8 基準時間にFormの送信日時を入力し、 時刻の書式、変換元/先のタイムゾーンを 入力します

Slide 49

Slide 49 text

④ データベースを取得する 1 2 3 4 5 6 7 8 データベース用に作成したエクセルファイルの保存場所と ファイル名を選択します。

Slide 50

Slide 50 text

⑤ メールアドレスをキーに社員の所属部署と氏名を取得する 1 2 3 4 5 6 7 8 社員情報テーブルの格納場所と テーブル名を選択します。

Slide 51

Slide 51 text

⑤ メールアドレスをキーに社員の所属部署と氏名を取得する 1 2 3 4 5 6 7 8 入力した社員のアドレスをキー値として、 Usersテーブルのメールアドレス列で検索します

Slide 52

Slide 52 text

必要な情報は全て取得できた 1. 入力した社員のアドレス、部署、氏名 2. 入力内容(体温、体調に関するコメント) 3. 日本標準時に変換したアンケート送信時刻

Slide 53

Slide 53 text

⑥ ログテーブルに健康情報を記録 1 2 3 4 5 6 7 8 収集した情報を 適切な「ファイル」の 適切な「テーブル」の 適切な「列」に配置するだけ 列名

Slide 54

Slide 54 text

⑥ ログテーブルに健康情報を記録 1 2 3 4 5 6 7 8

Slide 55

Slide 55 text

⑦ メインテーブルの健康情報を更新する 1 2 3 4 5 6 7 8 各項目に入力する値は、 前項のログテーブルと同一 ただし、 アクション名が「行の更新」 になっている点に注意

Slide 56

Slide 56 text

⑦ メインテーブルの健康情報を更新する 1 2 3 4 5 6 7 8 「行の更新」では、 設定したキー値の行がテーブルに 存在しない場合、このアイテムが エラーを返します。 メールアドレス列にキー値がない場合、 エラーが返ってくる

Slide 57

Slide 57 text

⑦ メインテーブルの健康情報を更新する 1 2 3 4 5 6 7 8 もし、エラーが返った場合、 「行の追加」をするように制御します。 次項よりその制御方法について記載します。

Slide 58

Slide 58 text

⑧ メインテーブルに更新対象の情報がない場合は追加する 1 2 3 4 5 6 7 8 「スイッチ」アクションを追加し、 「実行条件の構成」で 「に失敗しました」にチェックを入れます。 こうすることで、 「行の更新2」が失敗した場合も、 このステップは実行されるようになります。

Slide 59

Slide 59 text

⑧ メインテーブルに更新対象の情報がない場合は追加する 1 2 3 4 5 6 7 8 スイッチアクションの「オン」という項目に式を入力します。 ここでは、「行の更新 2」の実行結果(= statusCode)を outputする命令を記述しています。

Slide 60

Slide 60 text

⑧ メインテーブルに更新対象の情報がない場合は追加する 1 2 3 4 5 6 7 8 NOTE PowerAutomateでは、ステップ名に数字がついている場合(ex. 行の更新 2)は、 内部的には、半角スペースがアンダースコアに置き換わっています。

Slide 61

Slide 61 text

⑧ メインテーブルに更新対象の情報がない場合は追加する 1 2 3 4 5 6 7 8 状態コード=404は、⑦で説明した「行の更新」が失敗したことを意味します。 このときは、「行の更新」ではなく「行を追加」を実行します。

Slide 62

Slide 62 text

⑧ メインテーブルに更新対象の情報がない場合は追加する 1 2 3 4 5 6 7 8 「行を追加」の内容は、 ⑦で説明した「行の更新」と同一です。 ⑦の行の更新と同じ値を設定する

Slide 63

Slide 63 text

終わり