Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Daysbetween (https://www.clubdelphi.com/foros/showthread.php?t=31916)

nenufer 22-05-2006 12:41:29

Daysbetween
 
Buenas!! Utilizo delphi7,tablas paradox.

tengo un problema con un procedimiento. Quiero calcular los dias que pasaron desde que alquile una pelicula hasta que la devolvi.

Código Delphi [-]
procedure TDM.CalculoDeuda();
var
  dias,diasDebe : integer;
  Deuda : double;
begin
  dias := 0; <--------por aqui no pasa
  DiasDebe := 0;<--- por aqui tampoco

  dias := trunc (DaysBetween (TblAlquileresFecha_Alquiler.Value,
             TblAlquileresFecha_Devolucion.Value));

      if TblAlquilerNum_dias.Value < inttostr(dias) then
        begin
          diasDebe := dias - strtoint(TblAlquilerNum_dias.Value);
          Deuda := TblAlquilerSancion.Value * diasDebe;

          TblDeudaDeuda.Value := round(Deuda);
          TblDeuda.Post;
        end;
    end;

El numero de dias me lo devuelve a 0. Si le pongo :
Código Delphi [-]
dias := trunc (DaysBetween (TblAlquileresFecha_Alquiler.Value,
             now));

Me devuelve el numero de dias mal. No se que es lo que estoy haciendo mal.
Si alguien me puede ayudar,gracias de antemano.

celades1 22-05-2006 13:50:46

Hola


la funcion DaysBetween funciona bien, yo creo que te sobra el trunc,
pero yo he probado con trunc y sin trunc funciona perfectamente, debes debugar tu codigo para ver que valor tiene TblAlquileresFecha_Alquiler.Value y TblAlquileresFecha_Devolucion.Value en el momento de lanzar la funcion, porque no deben tener el valor que tu te piensas

No veo que mas puede ser

Saludos

nenufer 22-05-2006 16:03:54

Buenas, gracias por contestar. Lo he probado en otro ordenador y si que funciona. No se porque. Cuestion del alias..? no lo se. Pero lo he hecho sin el trunc. Y con puntos de ruptura todo me ha dado bien.
:confused: No se. Pero funciona:p .
Gracias:)

samantha jones 22-05-2006 18:34:09

No seria lo mismo y sin usar otra función hacer lo siguiente:

Código Delphi [-]
dias := trunc(now - fechadealquiler);

o cual es la ventaja de usar la función DaysBetween?

Saludos


La franja horaria es GMT +2. Ahora son las 10:18:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi