Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Unhappy Problema con consulta

Hola estoy realizando la siguiente consulta

Código Delphi [-]
SQL := 'Select Id from Distribution Where (IdGh = :GH) and (SectionLetter = :Sec) and '
      +' (From_Bench = : Desde) AND (To_Bench = :Hacia)';
LocalQuery.SQL.Text := SQL;
LocalQuery.Parameters.ParamByName('GH').Value      := Vivero;;
LocalQuery.Parameters.ParamByName('Sec').Value     := Secc;
LocalQuery.Parameters.ParamByName('Desde').Value   := StrToFloat(From);
LocalQuery.Parameters.ParamByName('Hacia').Value   := StrToFloat(Hacia);
LocalQuery.Active := true;
ExisteDistribucion := LocalQuery.Fields[0].AsString

cuando ejecuto el procedimiento, lleva unos valores que se encuentra en la base datos

Adjunto screenshots:
(el procedimiento cuando es llamado)
http://i401.photobucket.com/albums/p.../variables.gif


(datos en la DB)
http://i401.photobucket.com/albums/p.../basedatos.gif

Sin embargo, aunque los datos de la consulta existen en la Db, no encuentra nada...

Que error estoy cometiendo, llevo como 5 dias, batallando con esto, ya no se que hacer...

Gracias!
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.

Última edición por Nomad fecha: 19-09-2008 a las 18:18:38.
Responder Con Cita
  #2  
Antiguo 19-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Hola, creo que es por usar .value en vez de los correspondientes .asfloat, .asstring...
Responder Con Cita
  #3  
Antiguo 22-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por coso Ver Mensaje
Hola, creo que es por usar .value en vez de los correspondientes .asfloat, .asstring...
Pero para eso el cast, ademas creo que no admite la propiedad asfloat
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #4  
Antiguo 22-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
bueno, el .asdouble...lo has probado por eso?
Responder Con Cita
  #5  
Antiguo 22-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por coso Ver Mensaje
bueno, el .asdouble...lo has probado por eso?
No soporta ningun As..... asdouble, asfloat, nada solo Value...
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #6  
Antiguo 22-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
vale, es adoquery...
Responder Con Cita
  #7  
Antiguo 22-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
ni idea...si en vez de usar parametros lo colocas directamente en la consulta...¿tampoco te funciona? si es asi, entonces el error tiene que estar en otras lineas.

PD: prueba de poner secc como quotedstr(secc), de la misma manera vivero si es un texto. Los campos de texto tienen que ir con el quotedstr en la consulta. Es probable que usando el variant te interprete, por ejemplo, :GH := vivero como entero, y al compararlo en la consulta, tambien interprete la cadena como entero... lo que yo haria es eso: colocar todo sin usar parametros, usando el quotedstr y el strtofloat segun convenga. saludos.
Responder Con Cita
  #8  
Antiguo 22-09-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
No estoy totalmente seguro pero tengo entendido que al trabajar con ADO y parámetros hay que establecer el DataType o el tipo de datos:
Código Delphi [-]
TUQuery.Parameters.ParamByName('tu_parametro').Value := ....
TUQuery.Parameters.ParamByName('tu_parametro').DataType := ....

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #9  
Antiguo 22-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Hola.

Yo sugiero que hagas esto:

Código Delphi [-]
LocalQuery.Parameters.ParamByName('Sec').Value := QuotedStr(Secc);

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #10  
Antiguo 22-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por egostar Ver Mensaje
Hola.

Yo sugiero que hagas esto:

Código Delphi [-]LocalQuery.Parameters.ParamByName('Sec').Value := QuotedStr(Secc);


Salud OS
No sirvio... sigue sin retornar nada...
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #11  
Antiguo 22-09-2008
Xcalibur Xcalibur is offline
Registrado
 
Registrado: ene 2008
Posts: 5
Poder: 0
Xcalibur Va por buen camino
¿y si cambias?

"(From_Bench = : Desde)"

por

"(From_Bench = :Desde)"
Responder Con Cita
  #12  
Antiguo 22-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por Xcalibur Ver Mensaje
¿y si cambias?

"(From_Bench = : Desde)"

por

"(From_Bench = esde)"
Asi esta, pero la verdad tampoco funciona!
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #13  
Antiguo 22-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
¿probaste lo de poner todo en una sola linea sin usar argumentos?
Responder Con Cita
  #14  
Antiguo 23-09-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por coso Ver Mensaje
¿probaste lo de poner todo en una sola linea sin usar argumentos?
No lo he probado, el miercoles lo hago y les aviso!
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #15  
Antiguo 26-09-2008
Avatar de Softweb
Softweb Softweb is offline
Miembro
 
Registrado: ago 2008
Posts: 46
Poder: 0
Softweb Va por buen camino
Deverias tener en cuenta que un valor float tiene decimales y por lo tanto te va a poner como separador de los decimales una coma, ante lo cual te va a cambiar la sentencia.

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con consulta josi Varios 2 02-08-2008 18:12:46
problema con consulta cyber_zero SQL 1 26-06-2008 16:57:40
Problema con una consulta MJ_23_13 SQL 2 02-04-2008 15:30:17
Problema con Consulta estebanx SQL 15 26-04-2007 00:19:40
Problema con consulta de SQL Durbed Firebird e Interbase 2 30-09-2004 21:41:39


La franja horaria es GMT +2. Ahora son las 06:16:42.


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