-
-
Notifications
You must be signed in to change notification settings - Fork 12
Calendars
The payroll calendar describes how the settlement runs are displayed in the calendar. The calendar in the system culture serves as the basis. The Payroll Calendar determines the frequency of wage payments with the wage cycle, the wage period and the weekly and annual definition. Each tenant has one or more calendar definitions that are addressed by different objects.
The payroll calendar is the basis for case fields with the time type
Period
andCalendarPeriod
.
The payroll calendar divides the business data into two time units:
-
Period in which the salary is paid, usually the calendar month (
PeriodTimeUnit
). -
Cycle in which the salary periods repeat, usually the calendar year (
CycleTimeUnit
).
The cycle time unit is always a multiple of the period time unit.
The following overview shows the possible combinations of the two time units with the number of wage payments in a cycle.
Period ↓ Cycle → | Week | Bi-Week | Semi-Month | Lunar-Month | Month | Bi-Month | Quarter | Semi-Year | Year |
---|---|---|---|---|---|---|---|---|---|
Week | 1 | 2 | - | 4 | - | - | 13 | 26 | 52 |
Bi-Week | - | 1 | - | 2 | - | - | - | 13 | 26 |
Semi-Month 3) | - | - | 1 | - | 2 | 4 | 6 | 12 | 24 |
Lunar-Month | - | - | - | 1 | - | - | - | - | 13 |
Month 1) | - | - | - | - | 1 | 2 | 3 | 6 | 12 4) |
Bi-Month 2) | - | - | - | - | - | 1 | - | 3 | 6 |
Quarter 2) | - | - | - | - | - | - | 1 | 2 | 4 |
Semi-Year 2) | - | - | - | - | - | - | - | 1 | 2 |
Year 2) | - | - | - | - | - | - | - | - | 1 |
1) Override the effective number of days in the calendar month with an average value.
2) Fiscal years with the year starting on any calendar month.
3) Month breakdown: [1 ... 15] + [16 ... days in month].
4) Default payroll calendar.
Example of different payroll calendars.
1 "calendars": [
2 {
3 "name": "YearlySalary",
4 "cycleTimeUnit": "Year",
5 "periodTimeUnit": "CalendarMonth",
6 "valueType": "Cycle"
7 },
8 {
9 "name": "MonthlySalary",
10 "cycleTimeUnit": "Year",
11 "periodTimeUnit": "CalendarMonth",
12 "valueType": "Period"
13 },
14 {
15 "name": "QuarterSalary",
16 "cycleTimeUnit": "Year",
17 "periodTimeUnit": "Quarter",
18 "firstMonthOfYear": "April",
19 "valueType": "Period"
20 }
21 ]
Die Kalender im Detail:
-
3
: Custom calendar nameYearlySalary
-
4
: Cycle time type isYear
-
5
: Period time type isCalendarMonth
-
6
: Data apply to the cycle: annual wages -
9
: Custom calendar nameMonthlySalary
-
10
: Cycle time type isYear
-
11
: Period time type isCalendarMonth
-
12
: Data apply to the period: monthly wages -
15
: Custom calendar nameQuarterSalary
-
16
: Cycle time type isYear
-
17
: Period time type isQuarter
-
18
: Start of the year isApril
-
19
: Data apply to the period: quarterly wages
The evaluation of the calendar in the wage run is carried out according to the following priority:
- Wage Type
- Empoloyee
- Division
- Tenant
🤝 Thank you for supporting this project with a donation.
⚡ This is a pre-relase version of the initial development, please read the restrictions.
- Payroll Engine