King of Timeにシフト表を登録
こんにちはやまぐちです。
昨日は勤怠管理のKing of Timeにエクセルで作成したシフト表を登録する作業の効率化をやってみました。いくつか落とし穴にはまったので、記載しておきます。
もともとの作業
King of Timeは市場シェアNo.1の勤怠管理システムだそうです。UIも綺麗で使いやすそうです。
このKing of Timeへのシフト表の登録も、マウス操作で簡単に行うことができます。ただし、勤務と勤務の間隔を計算することができないので、エクセル上でシフトを作成し、King of Timeに手動で登録していました。
これがかなり時間がかかるために自動化を依頼されました。
エクセルから縦長のデータへの変換はパワークエリで
シフト表は縦に職員名、横に日付が並んでいる集計表です。このままだと、アップロードできません。1人の職員のある日の勤務が、日付、職員コード、パターンコードという1行になるようにデータを変換する必要があります。
今回は、個人情報ということで、ネットに繋がらない環境に、データが置いてあり、初めてパワークエリを使ってみました。
シフト表の該当部分を選択し、データタブの「データの取得と変換」の「テーブルまたは範囲から」をクリック。(範囲を右クリックでもいけるようです)
データ範囲のダイアログが表示されるので、OKを押すと、パワークエリエディターが立ち上がります。
職員名の列を選択して、「その他の列のピボット解除」をやります。
不要な列を削除して、列を並べ替えます
ファイルタブの「閉じて読み込む」を押す
んー、サクサクで楽しいですね!
このファイルをCSV形式で保存しておきます。
データアップロードの落とし穴
さて、データは出来たので、次にKing of Timeへのアップロード、なのですが、ここで僕がはまった落とし穴について先に解説しておきます。
データ型
マニュアルには詳しく書かれていないのですが、実はデータ型に制限があります。これを知らずにアップロードすると大量のエラーメッセージが出ます
日付はYYYY/MM/DDもしくはYYYYMMDD
職員コードとパターンコードは桁数が決まっており、ゼロパディングが必要
日付と職員コードはデータ型を指定してくださいと、職員コードは◯桁にしてください、というエラーメッセージがでるので問題なく修正できます。
しかしパターンコードのほうは、ゼロパディングせずに登録すると「そんなパターンはありません」というエラーがでるので焦りました。エラーが出たパターンコードを全部調べ直して、時間もずいぶんかかりました。
ということで、パワークエリでこの型変換もやっておくとよいです。しかし、実際にやってみないとエラーが出るかどうかわからないので、何回か試行錯誤が必要になるかもしれません。
BOM: Byte Order Mark
どんなデータをアップロードしても1行目だけエラーになるのが、これでした。エラーメッセージを見ると1行目のデータの前に文字化けした3文字がくっついています
これはBOMとよばれるもので、今回はUnicordで保存をしたので、それを示す記号のようなものでした。エクセルでUnicordで保存すると、自動的に先頭についてしまうようです。
これを解消するにはWindowsではファイルをメモ帳(Notepadで検索する)で開いて、Unicordを指定せずに保存するとよいです。
アップロード
さて、いよいよKing of Timeへのアップロードです。
トップメニューからエクスポート・インポートをクリック
「データ入力」の「スケジュールデータ」をクリック
スケジュールデータ入力画面になるので、レイアウト選択から該当するレイアウトを選びます。(今回は職場名にしました)
すると右に選択したレイアウトで設定されている項目が表示されます。
これがこの3つに設定しておきます。このレイアウトの変更は管理者権限がないと出来ないので、担当の方に依頼しましょう。
つづいてCSVファイルを選択して、一番下のアップロードボタンを押します
エラーがでなければ、登録します、みたいなボタンが出ます。
これを押すとアップロードされるので、勤務表を見て確認します。
効率化の効果
今回の効率化で1−2時間程度の時間が短縮できるそうです。このような作業は早く自動化して、本来の業務に取り組みたいですね!
では、また
この記事が気に入ったらサポートをしてみませんか?