Una duda tengo que sumar rangos de fechas de una persona por actividad laboral:
Ej: 01/01/2015 - 02/01/2016 = 1 año y 1 un dia
01/01/2017 - 02/04/2018 = 1 año - 3 meses - 2 dias etc...
Tengo la funcion que me convierte por rango de fechas a año-mes -dia pero no encuentro nada que me sume todos los resultados y me de el valor final ya que si sumo la cantidad de dias entre todos los rangos no me da igual.
Lo que hago en ese momento es suma total de dias de todos los rangos pero se que no es real el valor.
Código Delphi
[-]
....
...('select DATEDIFF(fecha_final,a.fecha_inicio) from antiguedad
....('where documento = :docu')...
while not zquery5.Eof do
begin
cantidaddias := zquery5.Fields[0].AsInteger + 1 ;
sumadias := sumadias + cantidaddias;
.....
zquery5.Next;
end;
dias := sumadias;
Resul:= dias/30.41;
meses := trunc(resul);
dias1 := dias mod 30;
if dias1 = 1 then dias1 := 0;
case meses of
0:
begin
edit6.Text := intToStr(dias);
end;
1..24:
begin
edit5.Text := intToStr(meses);
edit6.Text := intToStr(dias1);
end;
else
begin
edit4.Text := intToStr(meses div 12);
edit5.Text := intToStr(meses mod 12);
edit6.Text := intToStr(dias1);
end;
end;