EAEmpAttendanceSysEntryCalculator
This document was generated using Claude.ai
Overview
Creates employee attendance system entries automatically based on SQL query results. Processes multiple employees in batch and calculates their attendance for specified date ranges, creating system-generated attendance records.
When This Action Runs
Manual execution or scheduled tasks for batch attendance calculation. Typically used for end-of-month processing, bulk attendance recalculation, or automated attendance generation based on time attendance data.
How It Works
- Validates configuration - Checks if manual attendance calculation is enabled in HR settings
- Executes SQL query - Runs the provided query to retrieve employee IDs and optional date ranges
- Processes each employee - Iterates through query results with progress tracking
- Determines date range - Uses query-provided dates or defaults to current month
- Calculates attendance - Runs attendance calculation for each employee within date boundaries
- Handles employment dates - Respects employee commencement and firing dates
- Creates transactions - Each employee calculation runs in a separate database transaction
- Accumulates results - Collects success/failure results from all employee calculations
Parameters
Parameter 1: Select Statement (Required) - SQL query returning employee data
- First column: Employee ID or code (required)
- Second column: Start date (optional, defaults to month start)
- Third column: End date (optional, defaults to month end)
Parameter 2: Ignore Manual Attendance (Required) - true/false to bypass manual attendance configuration check
Example SQL Query
with dates as (
select cast(DATEADD(month, DATEDIFF(month, 0, GETDATE()), 0) as date) mstart,
cast(DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+1,0)) as date) mend
)
select distinct l.employee_id, mstart, mend
from TimeAttendanceLine l
left join dates on 1 = 1
where fromDate >= dates.mstart
and l.toDate <= mend
Database Tables Affected
- EmpAttendanceSysEntry - Creates new system-generated attendance entries
- Employee - Reads employee data including commencement and firing dates
- TimeAttendanceLine - May be referenced in the SQL query for employee selection
- HRConfiguration - Checks manual attendance calculation settings
Module: hr
Full Class Name: com.namasoft.modules.humanresource.utils.actions.EAEmpAttendanceSysEntryCalculator