Columns
| Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments |
|---|---|---|---|---|---|---|---|---|
| id | bigserial | 19 | √ | nextval('tbl_attendancepolicy_id_seq'::regclass) |
|
|
Primary key |
|
| policyname | varchar | 100 | √ | null |
|
|
Meaning: The user-friendly name of the attendance policy (e.g., “Standard Office Hours,” “Flexible WFH Policy”). |
|
| description | varchar | 1000 | √ | null |
|
|
Detailed description of the policy, summarizing its scope and key features. |
|
| members | text | 2147483647 | √ | null |
|
|
Meaning: Indicates which employees or groups are assigned to this policy. |
|
| allowfromapp | bool | 1 | √ | null |
|
|
Flag to indicate if attendance (punch-in/out) is allowed via the mobile application. |
|
| allowfromweb | bool | 1 | √ | null |
|
|
Flag to indicate if attendance is allowed via the web portal (desktop browser). |
|
| allowfrombiometric | bool | 1 | √ | null |
|
|
Flag to indicate if attendance is allowed via biometric devices. |
|
| calculationmethod | varchar | 255 | √ | null |
|
|
Defines the basis for attendance calculation (e.g., Total Working Hours, Net Working hours-based, Single punch). |
|
| multipunchallowed | bool | 1 | √ | null |
|
|
Determines if an employee can have multiple punch-in/out pairs in a single day. |
|
| correctionlimits | bool | 1 | √ | null |
|
|
The maximum number of times an employee can raise a correction request within a specified period (e.g., per month). |
|
| correctionrequestraisedays | int4 | 10 | √ | null |
|
|
The number of days after an attendance event within which a correction request can be raised. |
|
| correctionmaximumallow | int4 | 10 | √ | null |
|
|
The total maximum number of correction requests allowed (Monthly or per policy term). |
|
| regularizationlimits | bool | 1 | √ | null |
|
|
The maximum number of regularization requests allowed (e.g., for missing a punch). |
|
| regularizationrequestraisedays | int4 | 10 | √ | null |
|
|
The number of days after a missed punch within which a regularization request can be submitted. |
|
| regularizationmaximumallow | int4 | 10 | √ | null |
|
|
The total maximum number of regularization requests allowed. |
|
| timeperiodforlatecoming | int4 | 10 | √ | null |
|
|
Defines the period within the shift start time that determines a “Late Coming” event. |
|
| timeperiodforearlygoing | int4 | 10 | √ | null |
|
|
Defines the period before the shift end time that determines an “Early Going” event. |
|
| timeperiodfortimeoff | int4 | 10 | √ | null |
|
|
The time period required to qualify an absence as a “Time Off” event (partial day leave). |
|
| fixedattendance | bool | 1 | √ | null |
|
|
Flag indicating if the policy is for a fixed shift/attendance schedule. |
|
| fixedlatecominggrace | int4 | 10 | √ | null |
|
|
The grace time allowed for late-coming in a fixed attendance model, after which a penalty or event is triggered. |
|
| fixedearlygoinggrace | int4 | 10 | √ | null |
|
|
The grace time allowed for early-going in a fixed attendance model. |
|
| allowlatecomingtype | varchar | 255 | √ | null |
|
|
The method used to calculate or allow late-coming (e.g., Daily, Monthly, Slab-based). |
|
| allowearlygoingtype | varchar | 255 | √ | null |
|
|
The method used to calculate or allow early-going. |
|
| allowlatecomingminutes | int4 | 10 | √ | null |
|
|
Total aggregate late-coming minutes allowed before a penalty is applied. |
|
| allowearlygoingminutes | int4 | 10 | √ | null |
|
|
Total aggregate early-going minutes allowed before a penalty is applied. |
|
| allowlatecomingtime | int4 | 10 | √ | null |
|
|
Specific time boundary for late-coming, if not using grace minutes (e.g., latest allowed punch-in time). |
|
| allowearlygoingtime | int4 | 10 | √ | null |
|
|
Specific time boundary for early-going. |
|
| firstpunchlateby | int4 | 10 | √ | null |
|
|
A flag or value indicating if a penalty should be applied based on the first punch-in being late by a certain margin. |
|
| applypenalty | bool | 1 | √ | null |
|
|
Master flag to enable or disable the application of attendance penalties. |
|
| latecomingandearlygoingpenalty | bool | 1 | √ | null |
|
|
The type of penalty applied for Group late-coming and early-going events (e.g., Half-Day deduction, Time-Deduction). |
|
| eventtype | varchar | 255 | √ | null |
|
|
Defines what constitutes a penalizable event (e.g., For Every event or after a set number of events). |
|
| noofevents | int4 | 10 | √ | null |
|
|
The number of late-coming/early-going events allowed before a penalty is triggered. |
|
| fixeddeductfrom | varchar | 255 | √ | null |
|
|
Specifies what the penalty is deducted from (e.g., Leave or attendance deduction). |
|
| fixeddeductleavetypes | varchar | 255 | √ | null |
|
|
Comma-separated list of leave types to deduct from (Eg NBL PL), if |
|
| fixeddeductionslab | varchar | 255 | √ | null |
|
|
JSON or Text describing the Short Fall Hour slab (e.g., 3 events = 0.25 day deduction, 5 events = 0.5 day deduction). |
|
| deductdays | float8 | 17,17 | √ | null |
|
|
The number of days (or fractional days) to deduct as a penalty. |
|
| fixedwaivepenalty | bool | 1 | √ | null |
|
|
Flag or criteria to automatically waive a penalty under certain conditions (e.g., high performance or working hours completion). |
|
| shortfallnotification | bool | 1 | √ | null |
|
|
Flag to enable/disable notifications for attendance shortfalls (e.g., less than minimum required working hours). |
|
| latecomingearlygoingnotification | bool | 1 | √ | null |
|
|
Flag to enable/disable immediate notifications to the employee upon late-coming or early-going. |
|
| flexibleattendance | bool | 1 | √ | null |
|
|
Flag indicating if the policy is for a flexible shift/attendance schedule. |
|
| flexiblegracehours | float8 | 17,17 | √ | null |
|
|
Total flexible hours/minutes allowed as a grace before a working hour shortfall is penalized. |
|
| flexibledeductfrom | varchar | 255 | √ | null |
|
|
Specifies what the shortfall penalty is deducted from in a flexible attendance model (Eg Leave and attendance). |
|
| flexibledeductleavetypes | varchar | 255 | √ | null |
|
|
Leave types (PL NBL) to deduct from for flexible attendance shortfalls. |
|
| flexibleshortfallslabhours | varchar | 255 | √ | null |
|
|
Penalty slab definition based on hours of shortfall in flexible attendance (e.g., 1 hour shortfall = 0.5 day loss). |
|
| flexibleshortfallnotification | bool | 1 | √ | null |
|
|
Notification flag for flexible attendance shortfalls. |
|
| penaltywarningnotification | bool | 1 | √ | null |
|
|
Flag to enable/disable a warning notification before a penalty is applied (e.g., at the N-1 event). |
|
| inpunchoutpunchnotification | bool | 1 | √ | null |
|
|
Flag to enable/disable confirmation notifications for every punch-in and punch-out event. |
|
| stage | varchar | 255 | √ | null |
|
|
The current Policy stage of the policy (e.g., Draft, Active, Retired). |
|
| combineecrlgrlimit | bool | 1 | √ | null |
|
|
Flag to indicate if late-coming (Early Coming/Late Going) limits should be combined or treated separately. |
|
| createdby | varchar | 50 | √ | null |
|
|
FK: public.tbl_userlogin.id or public.tbl_employee.employeeid |
|
| createddate | timestamp | 29,6 | √ | null |
|
|
Timestamp of when the policy record was created. |
|
| modifiedby | varchar | 50 | √ | null |
|
|
FK: public.tbl_userlogin.id or public.tbl_employee.employeeid |
|
| modifieddate | timestamp | 29,6 | √ | null |
|
|
Timestamp of the last modification to the policy record. |
|
| startingday | int4 | 10 | √ | 0 |
|
|
Defines the day of the week or month that the attendance/payroll cycle starts (e.g., Sunday, 1st of the month). |
|
| mobilepunchinimage | int4 | 10 | √ | null |
|
|
Flag requiring an image/photo capture during mobile punch-in. |
|
| mobilepunchoutimage | int4 | 10 | √ | null |
|
|
Flag requiring an image/photo capture during mobile punch-out. |
|
| weblocation | varchar | 50 | √ | null |
|
|
Flag or setting for geographical location (IP/network) validation during web punch-in/out. |
|
| mobilelocation | varchar | 50 | √ | null |
|
|
Flag or setting for GPS/geo-fencing location validation during mobile punch-in/out. |
|
| allowedmaxtimeinotherhalf | int4 | 10 | √ | 50 |
|
|
Maximum time allowed to punch in the second half of the day without penalty (e.g., for short shifts or exceptions). |
|
| shiftstartnotificationtitle | varchar | 100 | √ | null |
|
|
Custom title for the notification sent at the shift start time. |
|
| shiftstartnotificationdescription | varchar | 500 | √ | null |
|
|
Custom body/description for the shift start notification. |
|
| shiftendnotificationtitle | varchar | 100 | √ | null |
|
|
Custom title for the notification sent at the shift end time. |
|
| shiftendnotificationdescription | varchar | 500 | √ | null |
|
|
Custom body/description for the shift end notification. |
|
| fixedshiftgracetime | int4 | 10 | √ | null |
|
|
Total non-cumulative grace time for a fixed shift (applies to either late-in or early-out, not both). |
|
| sandwichoffday | bool | 1 | √ | null |
|
|
Flag to determine if an off-day (e.g., weekend) between two leaves/absences should be counted as a leave/absence. |
|
| looseninginout | bool | 1 | √ | null |
|
|
A mechanism to relax the punch-in/out time constraints, often used for staggered shifts or exceptions. |
|
| timesheetonpunchin | varchar | 50 | √ | '''OFF'''::character varying |
|
|
Flag to prompt a timesheet or task entry upon punch-in. |
|
| timesheetonpunchout | varchar | 50 | √ | '''OFF'''::character varying |
|
|
Flag to prompt a timesheet or task entry upon punch-out. |
|
| salarydeductiontype | varchar | 50 | √ | null |
|
|
Specifies the base for salary deduction (e.g., Basic, Gross, or other component). |
|
| salarydeduct | float8 | 17,17 | √ | null |
|
|
Flag to show if an amount (salary) should be cut as a penalty. |
|
| salaryfulldayhour | int4 | 10 | √ | null |
|
|
The number of hours considered a “Full Day” for salary calculation or payroll processing purposes. |
|
| fixedshiftgracetimehalfday | int4 | 10 | √ | null |
|
|
Non-cumulative grace time for a fixed shift when calculating a half-day loss (Waive off penalty if working hours are completed). |
|
| restrictgraceafter | int4 | 10 | √ | null |
|
|
Time of day or condition after which grace time is no longer applied (e.g., after 10:30 AM). |
|
| addgracewhen | varchar | 50 | √ | null |
|
|
Condition or rule for when to apply additional grace time (e.g., only on weekly off days). |
|
| fixedwaivepenaltyhalfday | bool | 1 | √ | null |
|
|
Flag or criteria to waive a half-day penalty. |
|
| removeotherpenaltywhenhalfday | bool | 1 | √ | null |
|
|
Flag to indicate if other minor penalties should be cleared when a major half-day penalty is applied. |
|
| timesheet_punch_validation | bool | 1 | √ | null |
|
|
||
| timesheet_time_range_mandatory | bool | 1 | √ | null |
|
|
Indexes
| Constraint Name | Type | Sort | Column(s) |
|---|---|---|---|
| tbl_attendancepolicy_pk_tbl_attendancepolicy | Primary key | Asc | id |
| tbl_attendancepolicy_qk_tbl_attendancepolicy | Must be unique | Asc | policyname |
