sobre las horas trabajadas
Si bien es cierto que DateDiff devuelve números enteros, también es cierto que el numero que devuelve tendrá la 'precisión' que deseemos, esto es:
Quiero que un periodo de 2 horas y 20 minutos me lo devuelva en :
Dias ==> 0
Horas ==> 2
Minutos ==> 140
Segundos ==> 8400
Aunque habrá quien lo logre, normalmente con guantes de boxeo no se lía un cigarrillo, pero sin ellos (tal vez con lupa y pinzas) pueden elegir las hebras.
Por cierto, asumo que convertir/traducir ese numero (entero y en minutos), no será un problema para presentarlo como horas y sus (si los hay) minutos.