Attendance Monitoring Setup / Attendance Capture Setup
For company wide setup goto
Attendance → Settings → Attendance Flags Calculator
The result expression should combine flags with |
To override company settings for an employee
Workforce → Administration → Profile → Employment → Attendance Flags Grid
Use Flags
{attendance.flags.AttendanceMonitored} | If attendance Monitored |
{attendance.flags.NoPenalty} | If attendance monitored bu no penalty like leave without pay etc. |
{attendance.flags.WorkPunch} | If Work Punch from mobile app |
{attendance.flags.PunchSnapMatch} | face matching from mobile app |
{attendance.flags.MobileAttendance} |
To allow punch from mobile Attendance will also record geo coordinates and address. To fix address of your office locations, add the geo coordinates in the Workforce → Employment → Locations grid |
{attendance.flags.ManualAttendance} | If attendance to be updated manually |
{attendance.flags.NoRegularization} | If attendance regularization not allowed |
{attendance.flags.WebCheckin} | If can check in from web browser after login to HRMates |
{attendance.flags.AttendanceNoTime} | Only Present Absent without time |
{attendance.flags.PunchSnap} | If capture face from mobile punch |
{attendance.flags.ByPresence} | Only Present Absent without time |
{attendance.flags.RestrictOutofGeoFence} | Punch not allowed outside geofence |
Example:
{attendance.flags.AttendanceMonitored}|{attendance.flags.PunchSnapMatch}|{attendance.flags.MobileAttendance}|{attendance.flags.PunchSnap}|{attendance.flags.WebCheckin}|{attendance.flags.WorkPunch}
Setup Biometric Devices
Make | Method |
ZKTeco all Models | Set Server IP and Port |
ESSL, Biomax all Models | Set Server IP and Port |
From Attendance Database | Support Team will setup pull punches process from database |
HRMates Attendance App
Android | download HRMates app from play store |
iOS | download HRMates app from app store |
Huawei | use APK sent by support team |
Attendance Regularization
Set number of working days allowed to Employee and Admins to request regularization from
Attendance → Settings → Working Days for Employee Attendance Regularization / Working Days for Admin Attendance Regularization
Approval Process for Leave Attendance Regularization
Attendance → Settings → Leave Attendance Overtime Approvals
See Leave, Attendance, Overtime Approval Process
Total In Time Calculation
Open Attendance → Settings → Total In Time Calculator.
In the calculator you can use variables,
- In Time
- Out Time
- Shift Start Time
- Shift End Time
- Break Time
And other variable as available in calculator options.
Example:
case when Holiday<>0 then
if weekoff and holiday conflict then ignore weekoff overtime
CASE WHEN {ctc.OTNotEntitled}=1 THEN 0 WHEN {ctc.WeekOffHolidayNoOT}=1 THEN 0 WHEN {classification.Statutory Classification.Statutory Classification}={classification.option.Statutory Classification.Statutory Classification.Wages Board - Security} AND {overtime.Hours.Festival Overtime}<>0 THEN 0 WHEN {classification.Statutory Classification.Statutory Classification}={classification.option.Statutory Classification.Statutory Classification.Wages Board - Security} AND weekday({attendance.Date})=6 AND {attendance.TotalInTime}>9 AND {attendance.TotalInTime}<=18 THEN (least (3, rounddown ({attendance.TotalInTime}-9,15))) WHEN {classification.Statutory Classification.Statutory Classification}={classification.option.Statutory Classification.Statutory Classification.Wages Board - Security} AND weekday({attendance.Date})=6 AND {attendance.TotalInTime}>18 THEN (least (6, rounddown ({attendance.TotalInTime}-18,15))) ELSE 0 END
Round(Greatest((TIMESTAMPDIFF(second,{attendance.InTime}, {attendance.OutTime}))/3600,0),2) else Round(Greatest((TIMESTAMPDIFF(second,Greatest({attendance.ShiftStartTime}, {attendance.InTime}),least({attendance.ShiftEndTime},{attendance.OutTime})))/3600,0),2) end
Late & Early Calculation
Late / Early Minutes Calculation
Open Attendance → Settings → Attendance Late Minutes Calculator / Attendance Early Minutes Calculator
Calculate minutes based on punch time and shift time
Example:
case when {attendance.ShiftStartTime} is not null and {attendance.InTime}>{attendance.ShiftStartTime} then case when TIMESTAMPDIFF(minute,{attendance.ShiftStartTime},{attendance.InTime})<( case when {shift.MinimumHours} <=8 then 15 else 15 end ) then 0 else TIMESTAMPDIFF(minute,{attendance.ShiftStartTime},{attendance.InTime}) end else 0 end
Attendance Late Minutes to Slabs
Open Attendance → Settings → Attendance Late Minutes to Slabs
If needed calculate slabs based on late minutes
Attendance Lates to Leave Days Calculator
Open Attendance → Settings → Attendance Lates to Leave Days Calculator
If needed calculate number of leave days to adjust from leave balances based on late and early minutes or slabs.
Order of leave type is based on Payroll → Settings → Auto Leave Application
Present Calculation
Calculate Present status of employee for the day based on Total in time, Shift details Open Attendance → Settings → Present Calculator Example:
CASE WHEN {attendance.OutTime} is null or {attendance.InTime} is null then {enum.Present.Absent} WHEN {attendance.TotalInTime}<{shift.MinimumHours}/2 then {enum.Present.Absent} WHEN {attendance.TotalInTime}<{shift.MinimumHours} THEN {enum.Present.HalfDay} ELSE {enum.Present.FullDay} END
Overtime Calculation
Create overtime types and set calculator for the time using raw over time hours
Open Attendance → Settings → Overtime Calculators
Add a new row and enter name of overtime type.
Example:
CASE WHEN {overtime.Hours.Workday Post}>=(40.0/60.0) THEN {overtime.Hours.Workday Post} ELSE 0 END
Typical cases
if weekoff and holiday conflict then ignore weekoff overtime
CASE
WHEN {ctc.OTNotEntitled}=1 THEN 0
WHEN {ctc.WeekOffHolidayNoOT}=1 THEN 0
WHEN {overtime.Hours.Festival Overtime}<>0 THEN 0
WHEN weekday({attendance.Date})=6 AND {attendance.TotalInTime}>9 AND {attendance.TotalInTime}<=18 THEN (least (3, rounddown ({attendance.TotalInTime}-9,15)))
WHEN weekday({attendance.Date})=6 AND {attendance.TotalInTime}>18 THEN (least (6, rounddown ({attendance.TotalInTime}-18,15)))
ELSE 0
END
Unauthorized Absence Penalty
Unauthorized absense is defined as employee Present Status not matching with Holidays and leaves applied for the day. For example employee if present for half day and he has no leave or holiday for the day, then its taken as half day unauthorized absence.
use Payroll → Settings → Auto Leave Application
enter order of leave types by which unauthorized attendance days are offset against the leave balances
Attendance Freeze Dates
Leave and Attendance changes are not allowed before Freeze Date.
Freeze date for Self Service is maximum of
-
- Last date of salary generated
- As per Settings in Attendance → Settings → Apply Day / Freeze Day
Freeze Date for Admin
Last date of approved salary
Weekoffs control
Set maximum weeksoffs an employee can have for attendance month. Settings maximum weekoffs for a month will apply to subsequent months unless changed.
Attendance → Roster Management→ Monthly Weekoffs grid
Weekoffs are counted as
Days marked as weekoff in employee attendance from Roster Upload or Modify Shift
+
Number of days having shift with .5 leave days multiplied by .5
Attendance Days window for Salary Month
use this to set up the dates of attendance to be considered for salary month. For example for Nov salary consider attendance from 25th Oct to 24th Nov
Attendance → Settings → Salary Start Day
Update Leave Balances
Intially Leave balance of employees need to be updated as on Attendance Go Live Date in HRMates.
-
- Use Attendance → Settings → Download Leave Balances Template to download template
- Add Leave Balnaces to the template
- Upload using Attendance → Settings → Upload Leave Balances
Calculators