Episode 465: Attendance Management in Cloud-based Workflow!

Tuesday, January 12, 2016
"We are trying to do all the work on Workflow. So please make Time and attendance reports also possible on Workflow!"

Attendance management (Time and attendance report) is performed by "Time card" in many companies. (Monthly confirmation)

However, if you are doing the routine work on the Workflow, you should consider how to make possible to report of "Coming to work" and "Leaving work" on the Workflow as well. Above all, it is significant that it allows real-time confirmation on the attendance of "Persons in positions of supervision or management" (Article 41 of Labor Standards Act in Japan). (Daily confirmation)

In this Workflow, a Task of "1. Coming to work Report" will be allocated as [My Task] to all the employees at 7 o'clock in the morning of every weekday.

Each employee will register the time of start working by clicking on the [Now] button upon starting to work to finish the Task of "1. Coming to work Report". (Of course, arbitrary time can be entered manually as well.) Likewise, handle the Task of "2. Leaving work Report" at the end of the day's work. Incidentally, in case someone forgets clock-out, the regular time will be recorded automatically. (For a day of regular time work, only reporting in the morning is enough.)

It might be rather a natural mechanism for a company in which a lot of "Teleworkers", "Remote workers" or "Outside sales people", etc.

[Attendance Report flow]



[Attendance Report flow:"1. Coming to work Report" screen]

If attendance was managed on this Workflow, the attendance record is to be exported using [Narrowing down filter]. (Excel format, etc.)

<Example of filter>
  • "Days worked" is after "#today.addMonths(-1).getFirstTimeInMonth()"
  • "Days worked" is before "#today.addMonths(-1).getLastTimeInMonth()"
  • "Applicant" is "Ichiro SUZUKI"

In addition, even though I think it is natural to leave "Attendance record" remain in data, but it is printed and stored in many companies in Japan, for interaction with the government authorities. For this monthly work, it would be different depending on the company's size and number of bases, whether carried out in the Management department initiative, or each worker to create to submit.


By the way, attendance management is necessary even for "Discretionary labor system". (It is gradually spreading also in Japan, by the legislation of 1987 and 2000.)

<Discretionary labor system in Japan>

Certainly, it is a mechanism that wages to be paid regardless of actual working hours. However, nevertheless, the work of "holidays and late at night", the payroll must be calculated by extra wages and working hours. In addition, in the first place, you must acknowledge the actual hours worked for "Safety securing" and "Health securing". (In other words, for the aspect of the labors, it does not mean that the time of Clock-in-clock-out is "totally arbitrary.")

Setting of Script Step "Hours worked calculation" (Server-side Javascript)
//// == Retrieving == 
var workStart = data.get("6"); 
var workEnd = data.get("7"); 
// com.questetra.bpms.util.AddableTimestamp 
var workBreak = data.get("8") - 0; // (h) number 

//// == Calculating == 
// java.sql.Timestamp: long getTime() 
// Returns the number of milliseconds since Jan 1, 1970 GMT 
intervalMilliSec = workEnd.getTime() - workStart.getTime() ; 
intervalHour = Math.floor( intervalMilliSec / 10 / 3600 ) / 100 ; 
// two places of decimals 
workHour = intervalHour - workBreak ; 

//// == Updating == 
retVal.put("9", java.math.BigDecimal( workHour ) ); 

Setting of Script Step "Emptying work and break time" (Server-side Javascript)
//// == Updating == 
retVal.put("6", null);  //Empty clock-in 
retVal.put("7", null);  //Empty clock-out 
retVal.put("8", null);  //Empty break time 

[Data Items list]


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

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