Accruals Changes in Version 3.30.0.688 (and Higher)
Introduction to Accrual changes
Version 3.30.0.688 of ReadyPay Desktop introduces several changes and new features to accruals. The changes are grouped by those that affect Company accrual plans, Employee accruals, and System level accrual changes. This article is intended to be a guide to the changes using common use cases. You may experience use cases that are not covered in this article. If you have questions about the changes that fall outside of the scope of this article, please submit a support ticket through the FreshDesk portal or by emailing your question to Support@taslargroup.com.
Company Accrual changes
This section contains changes to company accrual plans. The settings listed in this section are available on the Accruals tab (Setup option) under Company Setup.
Advanced Options subtab – Clear To field
There is a "Clear To" field within the Advanced Options subtab. The Clear To field is read only and displays the C/O Max value from the accrual table. In cases where an accrual plan has multiple C/O Max values, the words "Review Table" will be shown. You will then have to review the accrual table.
This field was added to ReadyPay Online in version 1.4.2540.
Eligibility and Probation subtab – Probation Settings
The Probation Setting field contains a drop list with new values and deprecated values. The deprecated values are marked with a description of "Do Not Use – Obsolete". The retained / new values and how they determine when probation ends are explained below:
- Accrual — After x Days Since Accrual Start Date. The probation ends x days after the start date on the employee's accrual plan.
- Hire — After x Days Since Hire. The probation ends x days after the employee's hire date.
- HoursWorked — After x Hours Worked (Since Accrual Start Date). The probation ends after the employee works x hours after the accrual plan's start date.
- HrsWorkedLifeTime — After x Hours Worked (Lifetime). The probation ends after the employee works x hours after their hire date.
- None — No Probation Period.
- Service — After x Days Since LOS Date. The probation ends x days after the Adj. LOS Date specified on the employee's accrual plan.
Important Notes:
- When the Probation Setting of "Service" is used, the following logic determines the employee's length of service: check the override length of service date on the employee accrual record (EAccr.lengthOfService); if empty then check the adjusted seniority date on the employee record (EInfo.adjSeniorityDate); if empty then check the rehire date on the employee record (EInfo.rehireDate); if empty then check the hire date on the employee record (EInfo.hireDate); if empty then either use check date or do not perform accrual calc.
- Once any employee's accrual plan goes from a Probationary period to Active, there is no automated method that will switch it back to a Probationary period. If you need to switch an employee back to a probationary period, we recommend that you end date the previous accrual plan and add a new instance of it.
Calendar changes
The company Calendar > Process Control subtab has new options to control the accruals when a check date is processed.
Prior to version 3.30.0.664, there was one checkbox labeled "Block Accruals". Checking this checkbox would cause accruals not to accrue hours or dollars on the employees who were being processed in the payroll and had active accrual plans. Clearing of accrual policies and accrual time used would still occur. In ReadyPay Desktop version 3.30.0.664, the label of this checkbox was changed to "Block Accrual Accumulation". There has been no change in the underlying functionality of the relabeled checkbox.
A new checkbox was added labeled "Block CalcAccruals". When checked, the "Block CalcAccruals" checkbox will skip all CalcAccruals operations when processing the check date and report the following message "Accruals fully blocked - nothing to do".
Employee Accrual changes
This section contains changes to employee accrual, accrual balance, and accrual history records. Improvements have been made in the integrity, performance, and auditing of accrual records.
Employee Accrual balance performance improvements
The most recent balances for Accrued Hours and Carry Over Hours will be in a different database table, thus making ReadyPay Desktop more efficient at retrieving this information. The EAccr table will now store the most recent values in the accruedHours and ratePerRemainder columns. Previously, this information was only stored in the EAccrHist table.
Database update to prevent overlapping accrual plans
Prior to this version of ReadyPay Desktop, you were able to add multiple active instances of a company accrual code to an employee. The new version of ReadyPay Desktop will prevent saving an employee accrual record when:
- A record with the same accrual code already exists on the employee.
- The current check date for the company is between the start date and end date for that employee's accrual code.
Auditing Employee Accruals
A new database table, EAccrBalanceHistory, has been added. This new table contains a point-in-time record of each employee's accrual balance as accrual changes are processed. The new table has been added to the synchronization process. Information in this table may be retrieved by performing a SQL query or creating a custom Crystal Report.
There is a new job, SnapshotAccruals, that will run during payroll processing. The purpose of the Snapshot Accruals job is to put accrual balance records in the new database table.
System Level Accrual changes
This section contains changes to the way the system processes and generates accrual information.
SnapshotAccruals job during payroll processing
Database records for the improved employee accrual balance auditing will be created by a new job called "SnapshotAccruals". This new job will automatically run when payrolls are processed and accruals are calculated.
Improved messaging in CalcAccruals jobs
When a payroll is processed, additional details will be logged in the job's progress log. The improved messaging may result in CalcAccruals jobs for some companies that end in a yellow "warning" where previously they ended in a green "done". You should take extra time to review the progress logs and address any issues noted.
Revert Accruals and Recalculate Accruals
A new feature has been added to ReadyPay that will allow you to correct employee accrual balances without the need to delete and reprocess payrolls. The new feature solves multiple issues. For example, accruals being calculated when they shouldn't have, or policy/employee setup changes which cause the need to recalculate balances for an entire payroll process. This is accomplished by using two new .NET job classes that have been added: RevertAccruals.NET and RecalcAccruals.NET. The jobs are designed to be used according to the following two use cases:
- A payroll was processed for a company, but the accrual plans were not properly set up. You need to correct the accrual plans and then the employee accruals. The process for this use case works like this: Run the Revert Accruals job -> Make the necessary changes to your accrual policies -> Run the Recalculate Accruals job.
- A payroll was processed for a company and accruals should've been blocked, but they weren't. You need to correct the employee accruals. The process for this use case works like this: Run the Revert Accruals job.
To enable this feature, add the following section in your
ProcessServerNet.exe.config file(s) directly under <configuration>:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.ComponentModel.Annotations" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.1.0" newVersion="4.2.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
Database tables and columns have been added to support this feature.
- Table EAccrBalanceHistory has been added.
- Table EAccrHist contains new columns IsReverted and RevertedTimestamp.
- Table EEmployeeEligibilityLog contains new columns IsReverted and RevertedTimestamp.
Using the RevertAccruals.NET job
- When you want to roll back accruals from a payroll process without deleting a payroll, you add a job to the job queue by clicking on the yellow star icon.
- Select the RevertAccruals.NET job class, company code, and State (i.e. Active or Ready) option.
- The job properties will be displayed allowing you to set additional options on what you want to revert. The options are explained below the image.
- IgnoreTransfers is an optional value used to revert accrual codes (i.e. BCode) that are configured to transfer to or receive transfers from other accrual codes. Values of 0 or blank are used for accrual codes with no transfers. A value of 1 is used for accrual codes with transfers.
- Recalc is an optional value used to immediately recalculate the reverted accruals after the revert accruals is done. Only use this option when you have already made the necessary adjustments to the accrual plan(s). Values of 0 or blank are used when you do not want an automatic recalc. A value of 1 is used when you want ReadyPay to automatically recalculate the reverted accruals.
- BCode is an optional value used to specify a specific accrual code to revert. Accrual codes are case sensitive. Leave this option blank to have the revert process all accrual codes.
- EmployeeId is an optional value used to specify a specific employee you want to revert accruals on. Since all employee IDs are 6 characters, the proper spacing needs to be manually keyed in. Meaning, an employee id of 123 would have 3 leading spaces followed by the numbers 123. Leave this option blank to have the revert process all employees.
- RevertToProcess requires a value. This property instructs the job how far back to revert the accruals. This is generally the value shown on the company calendar's "Process #" field for the oldest check date you wish to roll back to. For example, you want to roll back the accruals from a company's most recent check date. You would enter the process number for the check date BEFORE the company's most recent check date. In other words, you Revert Accruals back to the last known good checkdate. The RevertAccruals.NET job can only make changes for processed checkdates.
A RefreshCache job for the company selected will automatically run after the RevertAccruals.NET job completes.
Using the RecalcAccruals.NET job
- When you want to recalculate accruals without the need to process a payroll, you add a job to the job queue by clicking on the yellow star icon. Recalculating accruals is used after you have Reverted Accruals from one or more previous payroll processes and made the desired changes to the accrual codes necessary.
- Select the RecalcAccruals.NET job class, company code, and State (i.e. Active or Ready) option.
- The job properties will be displayed allowing you to set additional options on what you want to recalculate. The options are explained below the image.
- RecalcFromProcess requires a value. This property instructs the job how far back to recalculate accruals. This is generally the value shown on the company calendar's "Process #" field for the check date you wish to start recalculating from. For example, you want to recalculate the accruals from the most recent check date. You enter the process number from the check date that was processed BEFORE the most recent check date. Unless you are skipping over a checkdate, you would enter the same process # that you used for the RevertAccruals.NET job. The RecalcAccruals.NET job uses the process # as the starting point. The job will Recalc Accruals for every processed checkdate that comes after the process # you entered.
- Bcode is an optional value used to specify a specific accrual code to recalc. Accrual codes are case sensitive. Leave this option blank to have the recalc process all accrual codes.
- EmployeeId is an optional value used to specify a specific employee you want to revert accruals on. Since all employee IDs are 6 characters, the proper spacing needs to be manually keyed in. Meaning, an employee id of 123 would have 3 leading spaces followed by the numbers 123. Leave this option blank to have the revert process all employees.
Important Notes:
- Accrual codes are case sensitive. A company accrual policy code of "PTO" is not the same as an employee code of "pto". The new jobs require the company and employee accrual codes to match.
- You cannot revert accruals for payroll processes that have already been reverted.
- You cannot recalculate accruals for payroll processes that already exist, you must revert them first.
Questions?
Contact your Payroll Service Provider.