Hola llevo toda la tarde y noche intentando resolver una asignación de tiempos de trabajo, de entrada pensaba que era fácil e hice un procedimiento en la base de datsos, pero veo que no da con el resultado esperado, no sé si es que es difícil de resolver o que tengo las neuronas a bajo rendimiento
, lo planteo por si alguno sabe como plantear la resolución, la cuestión es la siguiente:
- Tengo una zona de trabajo donde se han hecho dos productos A y B, cada uno de ellos en un periodo de tiempo , por ejemplo el producto A se ha trabajado desde las 10:00 a las 12:00 , y el B desde las 11:00 hasta la 13:00 (nótese que se intersectan los periodos de trabajo de cada producto, es decir durante un tiempo se ha trabajado en los dos productos).
- Tengo un trabajador que ha trabajado de 9:00 hasta 13:30, parte de ese tiempo (el que va de 10:00 a 13:00) ha estado trabajando en esa zona en los dos productos.
Lo que quiero es una fórmula para distribuir el tiempo que ha empleado en cada producto (se entiende que el periodo que coinciden los dos productos, se dedica de forma proporcional a cada uno).
La resolución sería:
Tiempo de trabajo de operario en la zona: 3 horas (10:00 a 13:00)
Tiempo dedicado al producto A: 1,5 h
Tiempo dedicado al producto B: 1,5 h
Ahora busco la forma de implementarlo con código. He puesto datos sencillos para simplificar, pero puede haber más de dos productos, y los tiempos de intersección pueden o no darse y pueden ser más de uno.