Time and attendance: 3rd RADICORE applicationPosted: May 29, 2014
This application is a small HR application that fulfils the following requirements:
- It hosts the profile of all employees working in the university.
- It is integrated with a biometric system through which it collects employee attendance data. This data is used to generate attendance reports.
- Sends an attendance report via email to all employees of the university.
An employee profile is constituted of their staff number, date of appointment, university issued email address, personal email address, pay group, department, designation and their employee status (active/inactive). I have created a database table and a set of CRUD screens to handle the employee profile feature of the application.
This application is also role based. A role has been created for the registration department of the university. Users assigned this role can create and update employee profiles.
The attendance module of the application uses SymmtericDS to replicate the database of a propriety biometric system. As the time-in and time-out records are collected by the biometric system, SymmetricDS pushes these records in real time to a MySQL database that is part of the RADICORE application.
Using attendance data from the database the application is able to generate the following PDF reports:
- Employee daily attendance report
- Employee weekly attendance report
- Employee monthly attendance report
A role has been created for a Head of Department (HoD) of the university. This role allows a user to view employee attendance reports for all employees of that department.
Finally, to meet the third requirement of the application I have used the batch script feature of RADICORE. A RADICORE batch script can use business logic from a RADICORE application and execute that business logic without any bar on its execution time. Emails containing employee weekly attendance reports are sent via a batch script to all employees’ university issued email addresses and personal email addresses at the start of each week.