2010/09/10
最終営業日と給料日を求める
by
jack(moblog)
—
posted at
2010-09-10 11:25 AM
とある会社の給料日は23日です。で、給料日の常として、土日祝日が23日に当る場合は 繰上がります。
最終営業日はその月で「銀行が営業している」一番遅い平日と定義されています。 なので、12月は30日またはそれより早い最後の平日が最終営業日となります。
最終営業日はシンプルなのでまだいいんですが、 給料日の23日というのがやっかいです。
- 祝日が多い。
-
祝日が動く(春分、秋分の日)、しかも正式には閣議決定まで決まらない。
# 閣議決定は無視して国立天文台が発表する(であろう)日にするしかないですが -
祝日法の規定によるシルバーウィーク現象にひっかかる。
# このとき、秋分の日が23日だと給料日が18日になります。次は2015年。
一応探してみたんですがちょっと検索してもダメだったので、 とりあえず「今日は該当日か?」を返すということで書いてみました。2060年くらいまでは動くかもしれませんが、 このプログラムを利用することによる損害は利用者が担保してください。作者は一切の保証をしません。
isPayday()を呼びだせば今日が該当日かを文字列で返します。cronから呼ぶとか、そういうのを考えて作ってます。なので、そのままでシェルスクリプトから使え(ると思い)ます
もし祝日に変更があった場合は、先頭のHolidays に適当に追加してください。
- Category(s)
- にっき
- The URL to Trackback this entry is:
- http://ns.jk.to/Nikki/moblog2010-9-10-11-25/tbping