Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Problemas de Calculo con decimales (https://www.clubdelphi.com/foros/showthread.php?t=72705)

Efren2006 07-03-2011 19:10:56

Problemas de Calculo con decimales
 
Tengo el Siguiente Problema

Tengo un procedimiento almacenado donde debo calcula un factor que resulta de la Division de 2 campos, al parecer algo simple, pero al realizarla siempre me da CERO, ya verifique que los campos tiene valor, incluso haciendo una Consulta igualmente me arroja CERO, coloco algo del Codigo;

Código SQL [-]
 
DECLARE VARIABLES XFACTOR NUMERIC(18,5);
DECLARE VARIABLES DIASPAGO INTEGER;
DECLARE VARIABLES DIASANO INTEGER;
..
..
XFACTOR =0;
SELECT DIASPAGO,DIASANO FROM PARAMETRO
INTO  :DIASPAGO,:DIASANO;
// DIASPAGO=15  esto son los valores 
// DIASANO=360
XFACTOR = (DIASPAGO/ DIASANO);
..
..
EL VALOR DE XFACTOR ME DA CERO...


Probe incluso haciendo una Consulta

Código SQL [-]
 
select DIASPAGO/ DIASANO from PARAMETRO
Igual el resultado es CERO.

Nota: Uso Firebird 2.1

Gracias por su aporte..

Al González 07-03-2011 19:34:37

Hola.

Te recomiendo leer este hilo, sobre todo el mensaje 27:

http://www.clubdelphi.com/foros/showthread.php?t=72413

Cuando es una división entero / entero, el estándar SQL dice que deben eliminarse las decimales del resultado (según el documento de Firebird ahí enlazado).

Saludos.

Al González. :)

Efren2006 08-03-2011 04:58:17

Cita:

Empezado por Al González (Mensaje 392826)
Hola.

Te recomiendo leer este hilo, sobre todo el mensaje 27:

http://www.clubdelphi.com/foros/showthread.php?t=72413

Cuando es una división entero / entero, el estándar SQL dice que deben eliminarse las decimales del resultado (según el documento de Firebird ahí enlazado).

Saludos.

Al González. :)

Amigo Al Gonzalez.. ya entendi el problema,,, debo cambiar las variables tipo Entero a Numeric (Float) para logra el objetivo.

Gracias por el aporte...


La franja horaria es GMT +2. Ahora son las 16:32:33.

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