Episode 523: Tracking the Hours Worked on Cloud

Monday, February 20, 2017
This article has the improved version.

Amelioration of Excessive Work Hours

In the Japanese government, "health damage due to overwork" has been actively discussed. The rise of this discussion is not an exaggeration to say that triggered by the "new employee suicide for overwork" (2015) in a major advertising agency. And it is expected that a new rule will be added such as "at most of 60 hours of monthly average overtime work under whatever employment contract", within the next one or two years.

In companies and government agencies where work hours are over 220 hours a month persistently, it may be necessary to take various actions, such as "drastic review of business processes" and "consideration of adopting of deemed hours worked system".

Reference) Labor Standards Act of Japan
  • Employers shall not have Workers work more than 40 hours per week, excluding rest periods.
  • Employers shall not have Workers work more than 8 hours per day for each day of the week, excluding rest periods.

Learning by implicit instruction is also included to hours worked

Certainly, it is true that there are people who think "want to work more for learning and experience" (staying in the office) with a pure heart.

Today, however, "learning necessary for work" is also defined as working hours. Given the fact that the case of trying to disguise the working hours as short as possible by letting workers to report as "self-development" or "private information gathering", this guidelines may be "unavoidable".

Common recognition within the team about working hours

Hours worked is defined as "time that a worker is objectively evaluated as being placed under command of the employer".

However, taking into consideration the situation as described above, it is very effective to once again discuss the common perception of each department of each company regarding "how to measure working hours concretely".

For example, not only "preparation of materials" at home but also "learning of technology trends" should be measured as working hours. However, on the other hand, if a server administrator who is required to confirm the latest security trends, included the time for "checking the Web for information" and "subscribing to the email newsletter", all the awaking time could be the hours worked.

[Hours-worked report]

Online report

The "Hours-worked report process" introduced here is a mechanism whereby workers themselves self-declare "daily hours worked".

Basically, it is designed on the premise that the time of attendance and leaving to be reported "daily". That is, if you decide that you "start working", fill in the On time on the application form, and enter "Off time" and "break time" if you decide that you are "working today is over".

Devising to reduce the "omission" and "input error"

It is not easy to bring it to the operation that "all employees do not miss reporting attendance / Leave time" every day.

In this "Hours-worked reporting process", various ideas have been implemented to "make report every day without missing".

Automatic start

For example, in order to minimize the occurrence of "forgetting to report attendance" (stamping), "My task" of "Report attendance time" is automatically allocated every morning. For the labor side, only needs to enter the attendance time in response to a request that arrives every morning, so omission or forgotten hardly occurs. Incidentally, if you leave for 20 hours without entering anything, it will automatically consider as a "vacation day", so you do not need to operate it even on a long vacation.

Initial value setting

Also, the fact that the default value (initial value) has been input in advance is also good from the viewpoint of lowering "input load". That is, you can report without trouble of entering numbers on the day when you worked for regular hours such as "attend at 9: 00/ leave at 17: 00 / 1 our for break".

Input support

Also, note that the input support buttons are decorated. Recently "Calendar input" and "Time select input every 30 minutes" are used as input support frequently, but further in this example "Frequent candidate buttons" are listed. Certainly, the value to be entered as "time to leave work" is limited among the 24 hours, so it can be said that the labor of workers for time input are greatly reduced.

"Devising" should be within the range that can be maintained

For dynamic decoration of input form, programming knowledge such as JavaScript is unavoidably needed. In addition, it is also necessary to accept certain risks such as there is a possibility that it may stop working when changing the layout due to version upgrade, etc..

It is not an example of "Excel macro that no one can maintain", but it can be said that it should be used within the range according to organization computer literacy and policy.

[Hours-worked report:"1. Attendance report" screen]

== Decoration of "Attendance time" (HTML/JavaScript)
<button type='button' class='my6AddMin' data-addmin='-10'>-10</button> 
<button type='button' class='my6AddMin' data-addmin='-5'>-5</button> 
<button type='button' class='my6AddMin' data-addmin='-1'>-1</button> 
<script type='text/javascript'>
    var myMin = parseInt( jQuery(this).data('addmin') );
    var tmpStr = jQuery("input[name='data\\[6\\].time']").val();
    var tmpDate = new Date();
    tmpDate.setHours( tmpStr.substring(0,2) );
    tmpDate.setMinutes( tmpStr.substring(3,5) );
    tmpDate.setMinutes( tmpDate.getMinutes() + myMin );
    var timeStr = ('0' + tmpDate.getHours()).slice(-2) + ':';
    timeStr += ('0' + tmpDate.getMinutes()).slice(-2);
    jQuery("input[name='data\\[6\\].time']").val( timeStr );
To work on holiday, "Substitution application" or "holiday work attendance application" is required.

== Decoration of "Leaving time" (HTML/JavaScript)
<button type='button' class='my17time' data-time='18:00'>18:00</button> 
<button type='button' class='my17time' data-time='18:30'>18:30</button> 
<button type='button' class='my17time' data-time='19:00'>19:00</button> 
<button type='button' class='my17time' data-time='19:30'>19:30</button> 
<button type='button' class='my17time' data-time='21:00'>21:00</button>, 
<button type='button' class='myAddMin' data-addmin='-5'>-5</button> 
<button type='button' class='myAddMin' data-addmin='-1'>-1</button> 
<button type='button' class='myAddMin' data-addmin='1'>+1</button> 
<button type='button' class='myAddMin' data-addmin='5'>+5</button> 
<script type='text/javascript'>
    var timeStr = jQuery(this).data('time');
    jQuery("input[name='data\\[7\\].time']").val( timeStr );
    var myMin = parseInt( jQuery(this).data('addmin') );
    var tmpStr = jQuery("input[name='data\\[7\\].time']").val();
    var tmpDate = new Date();
    tmpDate.setHours( tmpStr.substring(0,2) );
    tmpDate.setMinutes( tmpStr.substring(3,5) );
    tmpDate.setMinutes( tmpDate.getMinutes() + myMin );
    var timeStr = ('0' + tmpDate.getHours()).slice(-2) + ':';
    timeStr += ('0' + tmpDate.getMinutes()).slice(-2);
    jQuery("input[name='data\\[7\\].time']").val( timeStr );
Prior approval is required for work later than 22 o'clock (verbal would do.)

[Data Items list]

[Free Download]
<Similar Models>
<<Related Articles>>

[Japanese Entry (ε’Œζ–‡θ¨˜δΊ‹)]