Chris21 Rollback Overview
If you haven’t setup Chris21 rollback yet, you might find this article interesting. The Chris21 rollback function has been available for a while now. It provides a quick and easy way to ‘rollback’ your changes should it be necessary. For instance, the Update Pay – UPD process. A lot of things happen when UPD is run. Traditionally, if you realise you need to go back after running UPD, it would mean restoring a backup.
That can be a hassle and time consuming, especially if you must wait on IT to do this for you. And there is always the possibility of issues occurring with the backup restore.
The Chris21 rollback feature takes away a lot of this hassle. For example, if you want to rollback UPD, you simply select the UPD file from the Rollback form and click Rollback. The system will then undo all changes that the UPD process made. There is no need to restore any backup files.
And best of all, the process to setup the rollback functionality is simple.
How does Rollback work?
If you need to rollback a process into the current database, use the Rollback Update – ROU process. This will set the data back to the state prior to when the initial was run. The Rollback function does not back up any files, rather it backs up individual entries or records which are written or updated by the process.
You select the processes that you wish to be rollback enabled using the Rollback Details -ROD form. Whenever one of these processes is run, all information prior to running this process is saved in a unique rollback file.
For more information about rollback see my blog How to Use the Chris21 Rollback Feature.
Configuring Your System for Rollback
Before you can use the Chris21 Rollback function you must configure your system. Even though you may have selected processes for Rollback using the Rollback Details -ROD form, rollback files will not be created until you have completed these steps:
- Enable Settings – CFT setting number 141.
- Update the RBSEQ table. Go to Tables – TAB and lookup RBSEQ. Set the Description value to 00000 (five zeros). This forces the rollback process to create a rollback file using the first available filename.
- Add these forms to your security – ROD, ROF, ROK, ROP and ROU. Also add ROD and ROU to your menu. These are usually added to the System -> Audit menu.
- Identify the processes or forms required for Rollback. Select the Rollback Enabled checkbox for each process required. The processes that are currently rollback compliant are:
|Form Identifier||Process Description|
|FEU||Update Fast Time|
|ETU||Update Daily Time|
|MTU||Update Multiple Staff|
|ALA||Adjust Previous Leave|
|MDC||Reset PYP Values|
|CLR||Clear End of Year|
|CST||Clear Static Update|
System Performance and Housekeeping
You may notice a slight degradation in system performance when running a process that is Rollback enabled. This is because the changes are being written to a rollback file. Although in my exprience, I’ve never noticed any degradation in performance.
The Chris21 rollback feature will create rollback files each time a rollback enabled process is run. You may never need to rollback a process, however the file will remain in the system DAT directory until it is deleted. Over time, a large amount of rollback files will accumulate in the DAT directory. To avoid this issue, enter a value in the Days to Hold field on the Rollback Details – ROD form. This defines the number of days to hold the files before they are deleted. In the example below, rollback files will be deleted after 7 days:
Rollback files are deleted when the Background Administrator – FLM process is run with Remove Expired Rollback Files selected. For more information about FLM see my blog Chris21 Database Management – Housekeeping Processes.
Rollback will give you more flexibility and allow you to work more efficiently. The key point to remember if you want to take advantage of the Chris21 Rollback functionality, is to perform the configuration setup. Without this, the system will not be able to create the necessary rollback files.
If you have something to share, add your comments below!