Holiday calculation by hours worked

SUGGESTED

Our staff work irregular hours so we need to calculate holiday by hours worked. BUT the calculated entitlement on Sage does not seem to be correct as the entitlement works on the 12 weeks prior to either a) holiday year, which doesn't work if they joined in the current year or b) holiday period, which doesn't include current period hours so the YTD calc is wrong when working our how much they have accrued. Also, as you cannot foresee the hours i.e. not a salary, you can only use the entitlement basis as days

My work around has been to run the Payroll Type History report to get the total hours per payment type and multiply by .108 (accrual per hour). Then run another report showing the holiday taken and merge the two. Shockingly, there is no comparison to what is being shown on their Holiday tab which means I can't trust the holiday tab. 

For example, Scheme information for an employee's scheme entitles them to 16.80 days of holiday. Entitlement is accrued hourly and 12 weeks prior to the holiday period.

The Entitlement tab shows 15.75 hours accrued (from using date as 31/3/24 so or the whole year) with 10 having been taken, leaving 5.75 remaining.

BUT when I run the Payroll Type History for the year it shows a total of 196.25 hours worked for the year. Multiply by .108 = approx 21 hours accrued. 

(Multiplier of .108 calc is 52 weeks = 40 hours per week = 2080 hours.......2080/52 weeks x 5.6 weeks = 224 hours entitlement........Entitlement of 224 / Total hours worked of 2080 = .108 entitlement per hour worked.)

Now I can ignore the entitlement tab on Sage if I have to (although I shouldn't need to) but I would like the columns of Holiday Hours and Holiday Rate and Holiday Total on the Payment Type History report to be populated as I can then circulate without having to adapt it.

Is anyone else experiencing this, what do you do or am I doing something wrong?