ページを選択

ストブロ

Coffee's Blog.

有給休暇申請で、会社の休業日を差し引きたい!

執筆者 | 2022年10月26日 | Coffee, Kintone, ストブロ

※投稿当時「アプリ集計プラグイン」と書くべき所を「関連レコード集計プラグイン」と誤った記載をしてしまいました。
正しくは「アプリ集計プラグイン」です。

 rex0220さんはKintoneを何倍も便利にするプラグインを販売されている所で、私もいくつも利用しています。
今回は「休日申請」というアプリを作って運用していたら「あれ?日曜日とかも通算して日数計算してるじゃん」という落とし穴に気がついた所がスタート。
 「すみません、アドバイスありませんか?」とサポートに問合せしたところ、詳しくご説明頂いたのでその解説です。

 画像が7枚になってしまい、twitterに直接アップ出来なかったので自分のブログにはりました。
 rex0220 プラグインはこちら←

 rex0220 Qiitaページはこちら←

有休、振休、早退、遅刻… 会社での申請処理をkintone化したい。そこまでは自力でなんとかしました。
出力はRepotone UでPDF化して、メールの送信もKintone任せ。だいぶ効率化できた!じゃあ、有給日数の集計でもするか… あれ?
日曜日も有給になってる。例えば10月19日(水)→10月24日(月)までを休暇申請したら、土曜日、日曜日も積算されちゃう。
じゃあ、19日→21日と24日の2つに分ければ良いじゃない? いや、それは面倒。

指定した期間中が別アプリに登録された日にマッチすれば減算する

これをrex0220 さんが提供する「アプリ集計」と「計算式」プラグインで解決する方法を教えてもらいました!
また、視覚的にも分かりやすくしたいという場合には「関連テーブル」で該当する情報を表示する事も出来ました。

必要なフィールドを4つ設定してください。
開始日選択、終了日選択:日付フィールド
規定休業日、期間:数値フィールド

必要なフィールドを3つ設定してください。
日付:日付フィールド

区分や備考は使い易いように設定してください。
今回の例では「休業日カレンダーに日付があれば、それは有給の通算からは除外する」というのが目的なので、それ以上の情報は全く必要ではありません。

動作確認の為、実際にデータを入れておいてください。

Ver.38から「自動アプリ集計」という機能が追加されました。以前はボタンをクリックする必要がありましたが、このVer.38からは上記の通り指定しておけば自動で実行されます!

集計条件に「開始日選択」以後、「終了日選択」以前を指定する事で、休業日カレンダーのレコードとマッチングの条件を指定します。

集計項目では「マッチしたら1で集計」して、規定休業日に入れる。という設定になります。「1」がポイント。

「初期化0」をチェックすると、対象のレコードが無かった場合も「0」を返します。後段の計算式プラグインの際に必要になるので忘れずにチェック。

この設定だけで、規定休業日に「2」が集計されます。
簡単!!!

レコード内に休業日「2」を集計できたので、後は算数するだけです。「計算式プラグイン」はkintone標準機能よりも高度な計算が可能でExcelでやっているような「関数」が使用できるイメージです。

もし、終了選択が空欄(未選択)なら期間は空欄。終了日が選択されていれば開始日と終了日の差を求めて「+1」、その後規定休業日を差し引く。という計算です。

IF(終了日選択="", "", DATE_DIFF(開始日選択,終了日選択,"days")+1-規定休業日)

有給を1日申請する場合、開始日:「10月24日、終了日:10月24日」となり、2つの日付間の差は0になります。なので、+1します。休業日カレンダーのレコードで日付が重複しない限り、規定休業日は開始日ー終了日の差を超えませんから、その点は単純に引き算です。

※計算式プラグインで「足し算」をする場合、式の中の値に未入力(平たく言うとnull)があると計算出来なくなるそうです。
 その場合「SUM」を使って「SUM(数値A,数値B)」とすると未入力の値があっても計算出来るそうです。
 今回はアプリ集計プラグインで「初期化0」を選択したので、SUMを使わず足し算をしてもOKになります。

 詳しくは rex0220の解説ページで!

これなら休業日を間に挟むことを気にせず、休業日を差し引いた正しい期間計算ができますね♪

今回は休業日でしたが、レコード集計プラグインを使用すれば例えば、「別アプリから、期間中の出勤日数をカウントする」という様な集計が簡単にできそうです!

自動で集計できるのは嬉しいけど、「見える」っていうの大事じゃん?というそこのあなた!分かります(笑)

こんな風に、休業日カレンダーの該当レコードが、「関連レコード」っぽく表示されたら、いかにもKintoneっぽい
ですよね?(笑)「関連テーブルプラグイン」でそんな事が出来ちゃうよ!と教えて頂きました。

休暇申請アプリにスペースを追加して、一意のIDを設定してください。 

関連テーブルプラグインを休日申請アプリに導入して、設定します。
検索条件では「DATE_FORMAT」を利用する事がポイント。

表示項目は「日付」でソートするのがポイントになります。

これだけで、関連テーブルが表示出来るようになります。

必須ではありませんが、便利。

PSNひっそりと再開

個人情報流出が問題となってサービスを停止していたプレイステーションネットワーク(通称:PSN)が一昨日5月28日ひっそりと再開しました。 ニュース報道ではサービス停止と情報流出の話題を大々的に取り上げたのに、 再開についてはほぼスルー?...

もふ・・・

今日はモフ曜日です(`・ω・´) 以上(/ω\) イヤン 桂 コヒ蔵でしたー( ^o^)ノ

DAIGORO with you, and me.

俺とおまえと どんどんっ♪ だいごろおー♪ ・・・ 焼酎はあまり好きじゃないですけど(/ω\) イヤン 最近「RUSE」というゲームにはまっています。 RTS(リアルタイムシミュレーションとか、リアルタイムストラテジーっていうのかな?)...

HDDデータの完全消去

昨日の続きですけど、パソコンを手放す際にはHDDを完全消去して個人情報などのデータが外部に漏れるのを防ぎたいですよね。 あと捨てるだけ、っていう状態ならHDD取り出してハンマーでゴチンゴチンやっちゃってくださいw...

週末始末記

なにやらこの週末はばたばた、ばたばた・・・ バタコさんかっ! コヒ蔵です( ・`ω・´)キリッ ってくらいばたばたでした。 土曜日出勤だったので、週末は土曜の夜から。 友人がパソコンを処分するっていうので、データの消去作業のお手伝い。...

2010/05/20は何を?

今日は眠たくてネタもないので去年の今頃は?とねじ巻きねじ巻き。 2010年05月20日は「夢か幻か・・・」 昨日我が家の無線LAN環境をちょっといじる必要があり、 でいじっていました。 無線LANに関してはこれまでずいぶんと頭を悩ませ、...

ジャンボ!

ドリームジャンボでしたか? 発売中ですよね。 ・・・  どの番号が当たるのか、こっそり教えてくれませんか?(`・ω・´) ・・・  当たった番号と私の番号、交換しませんか!(`・ω・´) ・・・  私に油田をちょうだい?(*ノωノ)キャ...

扇子を下さい。

レゴブロックを組み立てる的なセンスや粘り強さ、集中力は結構ある方だと思います。 いちから勉強すれば良いんでしょうが、サンプルコードやパターン学習、トライアンドエラーで XHTMLを書いたり。...

春雨ダイエット

夕食のコントロールを初めて・・・もう2年くらいにはなっていると思うのですが、 当初MAX85kg位あった私の体重も、時間をかけてゆっくりと降下し 一時71kg台まで下がりました。 そこから時間をかけてゆっくりと上昇し74kgに。 これはやばい!とWii...

コーヒーのノリノリEnglish

やぁ、みんな! 今日もコーヒー先生のノリノリEnglishの時間だよ! ちゃーんと復習してきたかなっ? ははは、ジョークさぁ! だって今日が初めてだもんな!w さて、早速今日の日常生活にガチで役に立つ バリュアボーなフレーズをスタディーして行こうぜ!...

iPhone Appって簡単に作れるのかな?

なんとなく、 なんとなくそう思う時があります。 iPhonAppって簡単に作れるのかな?って。 何十万本とAppはあるそうですが、なかなか自分にジャストミートっていうの探すの大変ですよね。 だったら作れたら良いのに。みたいなw...

パソコンうるさいw

MBAを買って一番気がついたことは・・・もとからあったデスクトップPCの騒音の大きさw 排熱の為のファンがギュンギュン回っている訳で、 慣れちゃうとなんていう事はないですが、比較すると顕著ですよね。...

0コメント


電器屋Walkerの過去配信のBGMで利用させて頂いております。

ポッドキャスト品質向上、整音テクニック 解説Live

開催のお知らせ

詳細はこちら

国際ポッドキャストの日

International Podcast Day Event

ツキイチ - 隣のポッドキャスト

まとめファンサイト