Slide 1

Slide 1 text

勤 怠 管 理 に 殺 さ れ そ う に な っ た 話 プログラマでも 何でもない鼻糞が 勤怠管理システムを 0から作ってみた話。 陽 (akira) ☑Power Apps ☑Power Automate ☑Teams ☑SharePoint

Slide 2

Slide 2 text

第壱話 礼讚の代償

Slide 3

Slide 3 text

3月末某弊社にて この間つくってもらった 日報アプリよかったよ! 書くのサボってるやつが 一目でわかるのはいいね! 某弊社社長 (実際はフサフサ)

Slide 4

Slide 4 text

3月末某弊社にて 某弊社社長 (実際はフサフサ) ありがとうございます。 でも私なんかでもアプリが 作れたのは… のおかげなんですよ! わい (実際は強面)

Slide 5

Slide 5 text

3月末某弊社にて 今使ってる勤怠システムが Windows7まで対応だから 変えなきゃいけないけど で作れるかな? 某弊社社長 (実際はフサフサ) わい (実際はテンパ)

Slide 6

Slide 6 text

某弊社社長 (実際はフサフサ) わい (実際はテンパ) 3月末某弊社にて 他社事例探して 可否検討してみます! (出来るとは言ってない)

Slide 7

Slide 7 text

『PowerApps 勤怠 作り方』 で検索検索ぅー 3月末某弊社にて

Slide 8

Slide 8 text

なるほどね完全に理解した! (変数ってなんだろう…?) 3月末某弊社にて 第壱話 礼讚の代償 -完-

Slide 9

Slide 9 text

最近の推しはPower BIです! Power Platform歴(9か月) 自社にoffice365導入(2019.8) Power Appsを見つける(2019.12) Power Automateを見つける(2020.01) JPPUG758(名古屋)に参加(2020.02) 個人的Power Apps流行(~2020.05) ハマりすぎて彼女に振られる 個人的Power Automate流行(~2020.07) 誤家庭に憧れ

Slide 10

Slide 10 text

cymbal chime base oboe harp cajon 銅鑼 theremin Home 365 Office365 Twitterで演奏公開中 Office365 日報アプリ 勤怠管理 W/F お歳暮アプリ 在庫管理 機器管理 • プロジェクト管理アプリ • 図番検索アプリ • 社内図書アプリ • 社内行事アルバムアプリ • ビンゴアプリ • おみくじアプリ • 改善提案アプリ • 評価シートアプリ • ヘルプデスクアプリ • 社内流行語投票アプリ • 掃除当番表 ・・・など現在33個作成(うち運用は7個)

Slide 11

Slide 11 text

Power Appsで楽器アプリ作成し、不定期に演奏会をする変態的楽団 Japan Power Apps Orchestra https://www.facebook.com/groups/powerappsorchestra 是非ご参加ください!(私は運営ではありませんが・・・)

Slide 12

Slide 12 text

第弐話 才気煥発の予感

Slide 13

Slide 13 text

モノづくり業の進め方は 車や建築と同じだろう! 男ならドンとやれだ! 4月頭某弊社にて

Slide 14

Slide 14 text

建築設計の場合 目的、ビジョン、予算の確認 プランニングや現状把握 インスペクション、是非の判定 テストモデル作成 問題点提起、改善提案 次工程へ ①背景、目的 ②問題点、方法 ③実行 ④確認、②に戻る ⑤完了 真理

Slide 15

Slide 15 text

①背景、目的 ②問題点、方法 ③実行 ④確認、②に戻る ⑤完了 真理 今回の場合 ①Windows10で既存システムが動かない →Power Platformで作成できるか検討 ②凄まじく細かく要件定義 (※今回はココの話中心) ③テストデータ、アプリ作成 ④デバッグ(罵倒 ご意見回収) ⑤完成

Slide 16

Slide 16 text

とりあえず今の勤怠管理の 流れを総務に聞こう! 背景、目的確認

Slide 17

Slide 17 text

よくわかんないんですけど、最終的にデータはcsvとpdfにして 給与計算してくれてる会計士さんにちゃんとzipにして パスワードかけてメールで送ってます! csvとpdf送ってる理由?よくわかんないです! ヒアリング よくわかんないんですけど入口のカードをピッてやると このPCのここをクリックして〇〇して△△して皆の勤怠が みれるんですよーよくわかんないですけど! よくわかんないんですけど、遅刻と早退は勝手にでるんですけど、 年休とか半休とかは打ち込まないといけなくて、 出張先から打刻できないので一人ひとり 退勤時間チャットで聞いてます! よくわかんないんですけど! 残年休?しりません! 個人で管理してるんじゃないですか?

Slide 18

Slide 18 text

よくわかんないんですけど、最終的にデータはcsvとpdfにして 給与計算してくれてる会計士さんにちゃんとzipにして パスワードかけてメールで送ってます! csvとpdf送ってる理由?よくわかんないです! 背景、現状確認 よくわかんないんですけど入口のカードをピッてやると このPCのここをクリックして〇〇して△△して皆の勤怠が みれるんですよーよくわかんないですけど! よくわかんないんですけど、遅刻と早退は勝手にでるんですけど、 年休とか半休とかは打ち込まないといけなくて、 出張先から打刻できないので一人ひとり 退勤時間チャットで聞いてます! よくわかんないんですけど! 残年休?しりません! 個人で管理してるんじゃないですか? よくわかんないけど!

Slide 19

Slide 19 text

背景、現状確認 こういうことかな? できること(前できたんだから出来るでしょ?って項目) ・事務所での打刻 ・時間帯別の計算 ・管理者による打刻修正 ・inputは『カードをかざす』のみ ・csvとpdfでの月締めoutput できないこと(折角作るんだからこれもよろしく項目) ・事務所外でのGPS打刻(社用携帯で打刻) ・日付超えた場合の打刻での計算 ・年休申請などの紐づけ ・年休残などの自身でのリアルタイム確認 ・年休取得義務や36協定のリマインド ・会社calendarの反映(第五土曜日は出勤) ・事務所の人はタブでピッてやりたい(社用スマホもってないから) ・イレギュラーの自動対応(休みだったけど急に夕方に客先修理等) え?これゼロから 一人ぼっちでつくるの?

Slide 20

Slide 20 text

勤怠申請(※4) 申請承認後、勤怠リスト(※3)に新規作成 ・名前、部署(User().fullnameで取得) ・日付、年休とかの種別(dropdownで選択) ・曜日、休日か平日か(日付から※1でlookup) ・社員種別、定時、メール(名前から※2でlookup) 会社カレンダーリスト(※1) (総務が勝手に作ってたExcelを連携) 社員リスト(※2) (総務が勝手に作ってたExcelを連携) 勤怠リスト作成(※3) 朝五時(勤怠の日付変更時間)に 今日の勤怠のベースを※2(ID使ってDo until)をもとに作成 ※4で先に該当日付の名前があればスキップ 計算フェーズへ ユーザー打刻 ※3で作った行編集(日付、名前でfilter) 出勤がblankなら出勤ボタンのみ表示 そうでないなら退勤ボタンのみ表示 ユーザーはアプリ起動→ボタン押すだけの2工程

Slide 21

Slide 21 text

あとは自動で計算させて エクスポートの機能つくるだけだ! 第弐話 才気煥発の予感 -完-

Slide 22

Slide 22 text

もしかして変動する値全部定義してあげれば あとは条件分岐で計算できるんじゃね? 変数って、数学の変数か? x,yとか・・・

Slide 23

Slide 23 text

第参話 変数 の襲撃

Slide 24

Slide 24 text

変数定義 計算したいoutputデータ ・定時内時間(AM) ・定時内時間(PM) ・通常残業時間 ・深夜残業時間 ・早出残業時間 ・遅刻時間 ・早退時間 ・休日出勤時間 打刻時に取得できるデータ ・出勤時刻 ・退勤時刻 ・休憩入時刻 ・休憩出時刻 ・定時出勤時刻 ・定時退勤時刻 と定義 と定義 ※30分単位の丸めはPowerAppsで行うものとする それぞれの時刻を, , , , , とおいたとき , , , , , , をあらわせ。 ただし、 , , , , , は社員によって様々とし、 残業時間は17時から、深夜残業は22時から、 日付の区切りはAM5時とする

Slide 25

Slide 25 text

変数定義 結構、定義が重複してるからこれも変数にしちまおう!

Slide 26

Slide 26 text

これ全部『変数の初期化』action 変数定義 「うわああああああああああ!!!」

Slide 27

Slide 27 text

変数定義

Slide 28

Slide 28 text

「うわああああああああああああああああああああああああ!!!」 変数定義 変数決定ゾーン 条件分岐ゾーン 変数リセットゾーン 第参話 変数 の襲撃 -完- とりあえず全パターン正常に動くことを確認(一晩かかった) ※今はもうちょっとコンパクトなflowにしてます

Slide 29

Slide 29 text

最終話 不安と決断

Slide 30

Slide 30 text

拠点用iPadアプリ 個人用iPhoneアプリ 勤怠申請アプリ 管理者用打刻 メンバー情報登録変更アプリ(PC) PowerAppsビジュアル

Slide 31

Slide 31 text

会社カレンダーリスト メンバーリスト 勤怠リスト(打刻列、承認列) ベース登録 事務所用アプリ GPS打刻アプリ 申請アプリ htmlテーブル excel生成 勤怠リスト(各時間数計算列) 会計士と共有しているフォルダに生成 create filesトリガーで勝手にメール送る 月次残業、年休残など通知 36協定アラート 年休取得義務アラート スケジューラーに登録 個人と上司に 『打刻ないよー』と通知 管理者アプリ 月ごとのバックアップリスト 会議資料 提出フォーマットに変換 時間計算 PowerAutomate他 全体概要 User Admin Manager Accountant DB処理 毎日5:00 出退勤時間が 登録されたら 締日に テーブル作成 されたら テーブル作成 されたら 計算が終わったら 出退勤時間が 登録されたら 締め作業 終わったら

Slide 32

Slide 32 text

最終確認(ここまで1か月) どれだけ改善したかな? できること(前できたんだから出来るでしょ?って項目) ・事務所での打刻 ・時間帯別の計算 ・管理者による打刻修正 ・inputは『カードをかざす』のみ ・csvとpdfでの月締めoutput できないこと(折角作るんだからこれもよろしく項目) ・事務所外でのGPS打刻(社用携帯で打刻) ・日付超えた場合の打刻での計算 ・年休申請などの紐づけ ・年休残などの自身でのリアルタイム確認 ・年休取得義務や36協定のリマインド ・会社calendarの反映(第五土曜日は出勤) ・事務所の人はタブでピッてやりたい(社用スマホもってないから) ・イレギュラーの自動対応(休みだったけど急に夕方に客先修理等) 全部改善した!!!!

Slide 33

Slide 33 text

これ、自分が死んでも誰か引き継げるのかな・・・? 法律変わった時に一人でメンテできるのかな・・・? そもそもメンテ引くほど大変じゃね・・・? なんかあったとき給料に影響でるけど大丈夫か? ざわ・・・ ざわ・・・ ざわ・・・ ざわ・・・ ざわ・・・

Slide 34

Slide 34 text

6月頭某弊社にて ・法律対応 ・メンテの難化 ・属人化 ・システムに伴う責任 の観点からSaaS導入を勧めます 期待させてしまって申し訳ありません そんなことより顔色悪いから少し休みなさい。 よく頑張ったね。 ちゃんと経験になってよかったよ。 これからもおもしろいアプリお願いね。

Slide 35

Slide 35 text

どこのSaaSにしよっかなー

Slide 36

Slide 36 text

最終話 不安と決断 -ジョブ完-

Slide 37

Slide 37 text

• ご利用は計画的に • 突き進むのは勝手だが、『出来るかもしれない!』 で突き進んでいいのは、プライベートだけにしよう(そして誤家庭へ…) • 失敗は糧になる • 幸か不幸か、Power Platform関連の理解が異常に深まった • ひとりで悩まない • ユーザーグループや勉強会を活用しよう あとがき 駄文を読んでいただき有難うございます。