1. [eMPF] – Web - Field Name Update
The field “eMPF Platform Connection ID” under the company settings has been updated to “Employer eMPF ID.”
2. [Import Template] – Web - Taiwan - A missing space in the validation of the employee import template has been fixed.
3. [Payroll Calculation] – Web – PayItemMthlySome() and PayItemMthlyTotal() Value Retrieval Fix
The value retrieval issues in the payroll calculation functions PayItemMthlySome() and PayItemMthlyTotal() have been fixed.
After the fix, the functions were tested and are now able to retrieve values correctly with accurate results.
4. [Version Control] – App – [Workstem One] Add Version Identifier to Device ID Field
Version identification logic has been added to the Device ID field for both iOS and Android. The current app version number is now appended to the Device ID.
Update rules:
If the app version at the time of clock-in is higher than the stored version, a forced update will be triggered.
If the app version at clock-in includes a version number while the stored record does not, a forced update will also be triggered.
In all other cases, the system will follow the existing validation logic.
5. [Autopay] – Web – DBS Bank UFF SAL Autopay File Development
The Autopay file has been updated in accordance with DBS Bank’s latest UFF SAL Autopay file specifications.
The implementation has successfully passed FAT testing.
6. [Attendance Calculation] – Web
Rejected leave applications should no longer be included in attendance calculations.
7. [Optimisation] – Web - Improved Field Ordering and Display
System UI optimisations, including improved field ordering and display , as well as persistence of filter and search configurations on web pages.
Enhanced the office clock-in location filtering logic in both Scheduling and Scheduling Pro modules.
Scheduling / Scheduling Pro Page Updates:
Removed the original office clock-in location option
Added shift filtering functionality with relevant filter criteria
Filter Employee List: Change it to filter employees, add an office check-in location filter option, and align it with the filtering logic used on the Scheduling and Scheduling Pro pages.
8. [Attendance Functions] – Web – Extension of TimesheetHours and TimesheetCount attendance functions
TimesheetHours(Type): Enable Type = Break (case-insensitive).TimesheetCount(Type): Enable Type = Break (case-insensitive).
9. [Employee] – Web – Adjustment to [Delete Employee] validation logic
Currently, when deleting an employee, the system checks whether the employee has existing timesheet applications, leave applications, or payroll records. If such data exists, the employee cannot be deleted.
Add a new validation condition: if the employee has existing roster or check-in/out (attendance) data, the employee also cannot be deleted. In this case, display the following message to the user: “Deletion failed. The current employee has existing roster or attendance data. Please delete the roster and attendance records before performing this operation.”
10. [Leave Calculation] – Web – Annual Leave [Limited Carry-Forward Balance Validity] not applied as per requirements
After setting a validity period for the annual leave carry-forward rule, the carry-forward balance should be calculated as follows:
Required logic:
Current annual leave balance
− System-generated entitlement for the current leave year
− Manually adjusted entitlement for the current leave year
− Imported leave balance adjustment for the current leave year
After the calculation, determine whether the result is positive or negative, and then process it according to the configured maximum transferable limit.
Actual logic (current behavior):
Carry-forward amount = Total entitlement before the current cycle + Sum of adjustments in the current cycle that are not system-generated, not manually adjusted, and not imported














