ご存じの方には濡れ衣ですごめんなさい。 これ間違って理解してました。 真実を知って衝撃を受けました。 周りに聞いてみたら多くの人が同じく誤解してました。 問題 crontab でこういうスケジュールを設定したら コマンド hoge はどのようなタイミングで実行されるでしょう。 正しくは、 毎月13日 または金曜日の0時0分 だった。 はい「知ってたよ」っていう人はごめんなさいよ。 日と曜日だけ or になる crontab の書式は、基本的に and なんですよね。 ところが、日と曜日だけは「または」になります。 さっき実験してみたけど実際にそうなった。 直感にあわないものの、「日」(第3フィールド)および「曜日」(第5フィールド)が同時に指定された場合、どちらかが満たされた場合両方でコマンドが実行される。 英語あたりだとどっちも day だし、 日と曜日の区別があまり強くないことも関係してるのかな。 ともかく直感にあわないけどそうなってます。 crontab だけで13日の金曜日を指定することはできないんですね。 13日に発動させて、あとはアプリケーション側で金曜日じゃなかったら無視、ぐらいか。 だからご存じだったらごめんなさいて。
次の出勤簿の記載方法に迷ったことはないでしょうか? 「…?出勤したら印鑑押すだけじゃないか。 迷うことはないだろ?」と思った方もいるかもしれませんが 深夜勤務があるときにはどうしていいかわからなくなります。 次の例を見て下さい。 12月1日PM10時に出発 12月2日朝AM6:00まで勤務 この場合だと、12月1日と12月2日両日とも出勤扱いになるのかわからなくなりますよね。 とある知り合いの運送会社では両方に印鑑を押していました。 でも、待ってください。 本当にそれでいいのでしょうか? 近年、労務管理の徹底が言われている中、適当に対応していたら大変なことになってしまいかねません。 日をまたぐようなケースは一般貨物運送事業においてかなり多いので、今回は労働基準監督署や運輸局が見た場合、どのような判断をするのか…この点について触れていきたいとおもいます。 Sponsored link 1.日付をまたいだ場合の勤務の取り扱いは? じつは、この日付をまたいだ勤務をした場合、現在の改善基準告示の前進となる昭和42年の通達 「自動車運転者の労働時間等の改善基準」が大きなカギを握っています。 この「自動車運転者の労働時間等の改善基準」に… 『自動車運転者の1日(勤務が二歴日)にまたがる者については、始業時刻からの継続24時間またはこれに引き続く各継続24時間とする』 このように明記されています。 また、労働基準法を見てみれば、昭和63年1月1日付基発第1号においては「1日とは、午前0時から午後12時までのいわゆる歴日をいうものであり、継続勤務が二暦日にわたる場合には、たとえ暦日を異にする場合でも 一勤務として取り扱い、当該勤務は 始業時刻の属する日の労働として、当該 「1日」の労働とすること」とされているのです。 Sponsored link 2.改善基準告示と労働基準法どちらを優先させるの? 改善基準告示…始業時間から24時間で考える 労働基準法…午前0時から午後12時まで(歴日) となっています。 では、一般貨物運送事業ではどちらを優先するのでしょうか? もともと自動車運転者の労働時間等の規制は、昭和41年までは他の産業と同様に主として労働基準法の規制のみによってました。 けれど、だんだん自動車運転者の労働条件を改善して、交通事故の激増に対処しなければいけないという動きが出始め、昭和42年には労働基準法に加える規制として、実作業時間規制を中心とする内容の通達「自動車運転者の労働時間の労働時間等の改善基準について」が策定されました。 さらにさらに昭和54年に拘束時間規制を中心とする内容の通達「自動車運転者の労働時間等の改善基準について」が策定され、平成元年には、こう通達のうち、拘束時間、最大拘束時間、休息期間及び運転時間に関する部分が告示とされました。 つまりは、これらの経過を踏まえて、改善基準告示上の用語は特段の定めがない限り、 労働基準法上の用語と同様という扱いになったんですね。 3.一般貨物運送事業では改善基準告示を優先する つまり、一般貨物運送事業では改善基準告示を優先するという結論になりました。 なので、日付をまたぐ場合の出勤簿の取り扱いは、改善基準に合わせて 始業時間の属する日に印鑑を押すと間違いありません。 下手に両方の日付に印鑑を押してしまうと巡回指導や行政監査で誤解を招くことにもなりかねませんので注意したほうがいいですよ^^ Sponsored link.
次の指定は以下の10種類のいずれかを指定します。 Date2 Date1と比較したい日付や時刻を指定します。 指定できる形式はDate1と同じです。 FirstDayOfWeek 曜日を表す1から7の数字のうち、何曜日を1とするのかを指定します。 日本の場合は日曜日を週の始まりとすることが多いため、 通常は省略して既定値のvbSundayのままで問題ありません。 それ以外の場合は指定していても無視されます。 VbDayOfWeek列挙型 定数 値 内容 vbUseSystemDayOfWeek 0 Windowsのカレンダーの設定で週の最初の曜日に指定された曜日が設定されます。 vbSunday 1 日曜日を1とします。 既定値です。 vbMonday 2 月曜日を1とします。 vbTuesday 3 火曜日を1とします。 vbWednesday 4 水曜日を1とします。 vbThursday 5 木曜日を1とします。 vbFriday 6 金曜日を1とします。 vbSaturday 7 土曜日を1とします。 FirstWeekOfYear 設定しても意味がないパラメータです。 何を指定しても既定値のvbFirstJan1として動作します。 本来は指定日付が年の始まりから何週目なのかを取得する際に、年の始まりの週をいつとするのかを指定すると思われますが、以下の4つの定数のいずれを設定しても値は同じになります。 仮に正しく動作したとしても日本の場合は1月1日が含まれる週が年の第1週目として数えますので通常は既定値のvbFirstJan1のままで問題ありません。 VbFirstWeekOfYear列挙型 定数 値 内容 vbUseSystem 0 システム設定 vbFirstJan1 1 1月1日の週を年の第1週とする vbFirstFourDays 2 新しい年の日付が4日含まれる週を年の第1週とする vbFirstFullWeek 3 週の全ての日が新しい年の週を年の第1週とする。 Long(戻り値) 引数Intervalの単位で2つの日付または時刻引数の間隔を返します。 日付のサンプルコード 日付間の間隔を取得するサンプルです。
次の