I checked out OrangeHRM from the Sourceforge top ten list over the weekend and it looks quite useful.
Here is a quick review. Some of the functionality looks very useful.
The third major facility of OrangeHRM is a comprehensive leave management module. This provides entire workflow for an employee to request leave, with any number of approvers being able to review the request. Approved leave is recorded in a company calendar. At each stage, the appropriate people are notified of the status of the request and any actions he or she must take. This alone is of great benefit to many companies whether small or large saving both paper and time, as well as showing at a glance who will be away on any given day or week.
I use ipayroll to deal with most of the hassle of accounting for paye and doing payment batches, but the other side of organising when leave can be allocated over a couple branches can be a pita. Self-service might make this much easier.