Ver Mensaje Individual
  #3  
Antiguo 29-01-2019
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Reputación: 17
shoulder Va por buen camino
Antiguedad

Si gracias pero mi duda es lo mismo calcular el day between y sumar todos los dias y de la cantidad de dias que medio dio, ejemplo : 2191 dias llevarlo a Año Mes Dia me parece que no da igual que calcular los rangos y sumar de esas partes los Años Mes Dia, porque no son dias corridos..


estoy inventando esto: no se si me da bien debo verificar.


Código Delphi [-]
.......................................

 while  not zquery5.Eof do
           begin

             DecodeDate(zquery5.Fields[0].AsDateTime, AAI, MMI, DDI);
             DecodeDate(zquery5.Fields[1].AsDateTime, AAF, MMF, DDF);

   AA := AAF - AAI;

   if( MMI <= MMF ) then
      MM := MMF - MMI
   else
   begin
      MM := MMF + 12 - MMI;
      AA := AA - 1;
   end;

   if( DDI <= DDF ) then
      DD := DDF - DDI
   else
   begin
      DD := DDF + MonthDays[IsLeapYear(AAF),MMF] - DDI;
      MM := MM - 1;
   end;

   if MM < 0 then
   begin
      AA := AA - 1;
      MM := 12 + MM;
   end;

  aa1 := aa+aa1;
  mm1 := mm + mm1;
  dd1 := dd + dd1;

  If dd1 > 29 then
     begin
       dd1:= dd1 - dd;
       mm1 := mm1 + 1;
     end;


  if mm1 > 11 then
     begin
       mm1 := mm1 - 12;
       aa1 := aa1 + 1;

     end;



              zquery5.Next;
  end;

edit4.Text  := inttostr(aa1);
edit5.Text  := inttostr(mm1);;
edit6.Text  := inttostr(dd1);
Responder Con Cita