I’m doing what you mention using Custom Reports, SQL and a Stored Program Setting for Holidays. There are a couple examples contained in the Tutorial, but they need updating to more current code. I can spend some time tomorrow updating the code in the Tutorial if you’re interested. EDIT: the code has now been updated in the Tutorial.
My Production System with 4 Employees uses a combination of 9 Reports (4 Hour Reports - one for each Employee, 4 Pay Reports - one for each Employee, 1 Overall Payroll Report - contains Pay Amounts for all 4 Employees) and 11 SQL Scripts (all dynamic, not Employee-based, so no requirement to add more SQL for more or less Employees).
From: