Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
Post value out of bounds

hola buneas tengo oun problemilla y es q me da el error value out of bounds cuando ago lo siguiente:

table1.FieldByName('stockact').AsFloat:=((table1.fieldbyname('stockini').AsFloat)+(entrada.fieldbyna me('entradas').AsFloat)) - salida.fieldbyname('salidas').AsFloat;

el campo de la tabla es nuemrico 6/2 es una tabla de dbase5 alguien sabe xq?
__________________
.:|Merlin|:.
Responder Con Cita
  #2  
Antiguo 13-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
Post mas sobre value out of bouns

un datelle q se me ha pasado por alto antes deciros q este proceso me funciona para la casi todos los articulos y para mas inrri en el articulo q me da error es uno en el q la operacion es

table1.FieldByName('stockact').AsFloat:=((table1.fieldbyname('stockini').AsFloat)+(entrada.fieldbyna me('entradas').AsFloat)) - salida.fieldbyname('salidas').AsFloat;

y los valores q tienen son ((0.6+540)-540.6) como puede ser q 0.0 de el error value out of bounds

__________________
.:|Merlin|:.
Responder Con Cita
  #3  
Antiguo 13-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
prueba a crearte una variable intermedia tipo double y asígnale el valor si esto no te da error pasa a asignarle al campo esa variable y si te salta ahi el problema estará en la definición del campo.


Saludos, Tony
Responder Con Cita
  #4  
Antiguo 13-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
Unhappy resp. tcp_ip_es

he exo lo siquiente e declarado

stock:double;


y luego he dejado la parte problematica asi:
stock:=((table1.fieldbyname('stockini').AsFloat)+(entrada.fieldbyname('entradas').AsFloat)) - salida.fieldbyname('salidas').AsFloat;
table1.FieldByName('stockact').AsFloat:=stock;

pero nada sigue el error. q puedo hacer mas??
__________________
.:|Merlin|:.
Responder Con Cita
  #5  
Antiguo 13-05-2004
santana santana is offline
No confirmado
 
Registrado: nov 2003
Posts: 1.030
Poder: 0
santana cantidad desconocida en este momento
Hola, buneas.

Tengo oun problemilla couando intento leer heste ilo y es ke n oenteindo algounas palarbas.
Responder Con Cita
  #6  
Antiguo 13-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
cuando te da el error en la asignación a la variable o en la asignación al campo?



P.D. Que chispa tienes Santana
Responder Con Cita
  #7  
Antiguo 13-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
en la asignacion al campo?
__________________
.:|Merlin|:.
Responder Con Cita
  #8  
Antiguo 13-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
te pregunto que si el error te lo da en esta línea:
Código Delphi [-]
stock:=((table1.fieldbyname('stockini').AsFloat)
+(entrada.fieldbyname('entradas').AsFloat)) - salida.fieldbyname('salidas').AsFloat;
o en esta otra(que es donde la asignas al campo):
Código Delphi [-]
table1.FieldByName('stockact').AsFloat:=stock;

Última edición por tcp_ip_es fecha: 14-05-2004 a las 15:33:25.
Responder Con Cita
  #9  
Antiguo 13-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
Angry resp. tcp_ip_es

lo de en la de la asignacion al campo y el error lo da xq cuando hace la operacion de la resta no la hace bien.

ent:=((table1.fieldbyname('stockini').AsFloat)+(entrada.fieldbyname('entradas').AsFloat));
sal:=salida.fieldbyname('salidas').AsFloat;

stock:=ent-sal;<-------hay!!

table1.FieldByName('stockact').AsFloat:=stock;

ej:

ent=(0.6+540)
ent=540.6

sal=540.6

stock=540.6-540.6 //al hacer esto da un valor muy raro.
stock=1.241570365e-13 //y claro esto es lo q hace q de el error ese de value out of bouns
xq el campo de la tabla es de (6parte entra,2parte decimal).

sabes xq hace la resta mal o q es lo q puede estar pasando???
__________________
.:|Merlin|:.
Responder Con Cita
  #10  
Antiguo 13-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
realmente no se que te puede estar pasando .

Declarate todos los campos de cada una de las tablas con el fieldeditor (botón derecho sobre el componente table->Field Editor.... y añadete todos los campos) después de haber hecho esto pon esta instrucción:

Código Delphi [-]
table1stockact.value:=((table1stockini.value)+(entradaentradas.value)) - salidasalidas.value;

Ya me dirás como te ha ido.

Saludos, Tony
Responder Con Cita
  #11  
Antiguo 13-05-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por tcp_ip_es
P.D. Que chispa tienes Santana
Esta

Responder Con Cita
  #12  
Antiguo 14-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
La verdad es que la gente es muy propensa a escribir como si de un móvil se tratase , con la cantidad de caracteres que te permite este peazo de foro je je je


Saludos, Tony

P.D. Y lo digo sin acritud eh!!
Responder Con Cita
  #13  
Antiguo 14-05-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Poder: 21
merlin Va por buen camino
solucion

Al delphji se le va la piedra y cuando hace restas de dos cantidades iguales hay cantidades con las q las hace bien y otras no.
ej:

540.6-540.6 = 0 bueno segun el delphi es 1.10203E13 lo q hacia q en mi
tabla no entrara ese valor xq mi campo era 6/2.
__________________
.:|Merlin|:.
Responder Con Cita
  #14  
Antiguo 14-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Hiciste lo que te comente????
Cita:
Empezado por tcp_ip_es
realmente no se que te puede estar pasando .

Declarate todos los campos de cada una de las tablas con el fieldeditor (botón derecho sobre el componente table->Field Editor.... y añadete todos los campos) después de haber hecho esto pon esta instrucción:

Código Delphi [-]
table1stockact.value:=((table1stockini.value)+(entradaentradas.value)) - salidasalidas.value;

Ya me dirás como te ha ido.

Saludos, Tony
Responder Con Cita
  #15  
Antiguo 14-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Para valores pequeños aconsejo usar el formato Currency. Te evitarás muchos problemas de estos

Código Delphi [-]
table1stockact.AsCurrency := ((table1stockini.AsCurrency) +
          (entradaentradas.AsCurrency)) - salidasalidas.AsCurrency;

PD: tcp_ip_es, podrías mirar de editar el mensaje 8 y poner un slto de linea para evitar el scroll horizontal? gracias
Responder Con Cita
  #16  
Antiguo 14-05-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Eso esta hecho

Saludos, Tony
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 23:07:06.


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
Copyright 1996-2007 Club Delphi