Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
buscar campo de Query en Table...

Hola soy muy poco experto en el tema y necesito ayuda, agradecer de antemano la solución que podaís dar.
Necesito hacer lo siguiente:
Al dar clic a un DBGrid que se vincula a un ADOQuery, este coja el campo este y lo busque en una tabla ADOTable de la misma que he sacado datos para el query.
No se si me he explicado.
Un saludo.
Responder Con Cita
  #2  
Antiguo 22-09-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Pensa2r Ver Mensaje
[..] Al dar clic a un DBGrid que se vincula a un ADOQuery, este coja el campo este y lo busque en una tabla ADOTable de la misma que he sacado datos para el query.
Cita:
Empezado por Pensa2r Ver Mensaje
No se si me he explicado. Un saludo.
A mí me ha parecido un trabalenguas

¿Qué es lo que quieres conseguir exactamente?
Responder Con Cita
  #3  
Antiguo 22-09-2010
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
Yo tampoco lo he entendido muy bien pero si te puedo decir que al pulsar en una línea de un grid que está ligada a un adoquery es como si seleccionaras el registro en el query por lo que solo tendrías que hacer en el envent onclick del dbgrid:

Código Delphi [-]
adoquery1.fieldbyname('elnombredelcampo').AsString;

para acceder al valor del campo que quieras en la línea de registro que tenías señalada en el dbgrid.

Un saludo.
Responder Con Cita
  #4  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Me parece que es un poco repetir, no?.
Si tienes una consulta en en query por que no hacer la busqueda ahi mismo?.
Claro, esto depende de lo que necesites, pero me extraña que se quiera BUSCAR el dato en un ADOTable, osea, se tendria que filtrar.
Si nos explicas algo mas, con gusto haremos el milagro......
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
GRACIAS por el interes y perdonad mi mala expresión.
A ver si ahora lo hago mejor...
tengo un Query que coge datos de una tabla reparaciones, de una tabla clientes y de una tabla aparato. Al hacer clic en el DBGrid que ha cargado este query, en el evento onclick quiero que coja el valor de código reparaciones desde este query y me lo busque en la tabla reparaciones posicionandome en la tabla reparaciones en el mismo código reparaciones del query.
Algo como el gotonearest pero en el query no me vale, o eso creo.
...creo que aun esta la cosa liada...jajaja..
GRACIAS
Responder Con Cita
  #6  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Facil, sin usar nada de nada solo un sinple ADD a la consulta.
Simple, facil, llano, caminante, etc. etc.....
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
GRACIAS Caral pero como hago ese ADD, repito soy muy novato en sql y bases de datos. Si me puedes dejar algún ejemplo..
Un saludo.
Responder Con Cita
  #8  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Es muy sencillo.
Empecemos por que nos muestres la consulta sql que usas en el ADOQuery.
Con esta consulta te explico como obtendrás ese dato en el evento que quieras.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #9  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
ok esto es lo que tengo:
Cita:
SELECT REPARACIONES.ESTADO,REPARACIONES.FACTURA,REPARACIONES.COD_REPARACIONES,CLIENTE.EMPRESA,APARATO.APARA TO,APARATO.MARCA,APARATO.MODELO,REPARACIONES.NUM_SERIE,APARATO.CHASIS,REPARACIONES.FECHA_RESGUARDO,R EPARACIONES.COD_CLIENTE,REPARACIONES.COD_APARATO
FROM REPARACIONES,CLIENTE,APARATO
WHERE (CLIENTE.COD_CLIENTE = REPARACIONES.COD_CLIENTE) AND
(APARATO.COD_APARATO = REPARACIONES.COD_APARATO)
Responder Con Cita
  #10  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bien:
Dejame entender las cosas bien.
Tienes un dbgrid.
Este DBgrid es cargado con los datos del adoquery.
Quieres que al dar click :
1- Que el dato se muestre en otro lado
2- Que el dato sea buscado en la tabla X?
3- Que ?

Pregunta adicional: Que BD usas?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #11  
Antiguo 22-09-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola Pensa2r, puedes utilizar la función Locate de tu AdoTable pasandole el codigo de reparación que recuperas de tu AdoQuery:

Código Delphi [-]
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  Codigo := AdoQuery.FieldByName('COD_REPARACIONES').AsString;
  AdoTable.Locate('COD_REPARACIONES',Codigo,[loCaseInsensitive]);
  ....................................

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #12  
Antiguo 22-09-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Bien:
Dejame entender las cosas bien.
Tienes un dbgrid.
Este DBgrid es cargado con los datos del adoquery.
Quieres que al dar click :
1- Que el dato se muestre en otro lado
2- Que el dato sea buscado en la tabla X?
3- Que ?

Pregunta adicional: Que BD usas?.
Hola Caral , lo que yo entiendo es que tiene en el DBGrid datos de 3 tablas y al hacer click en un registro, se posicione en el registro que corresponde en su ADoTable de una de sus tablas.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #13  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola Caro.
Si eso estoy entendiendo yo tambien, lo que pasa es que estoy tratando de ver como podemos elminar el AdoTable y usar la misma consulta para que nos traiga lo que necesita.
Ya sabes, complicandome la vida...........
Saludos
__________________
Siempre Novato
Responder Con Cita
  #14  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
si eso, al dar clic en el DBGrid que tiene cargado el query, en la fila del DBGrid cogera un dato de cod_reparaciones y este me lo busca en la tabla reparaciones.
base de datos es mysql desde el mismo ordenador instalada con xampp.
Responder Con Cita
  #15  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
Probado lo que comenta CAROL :
Cita:

begin
Codigo := Modulo_DATOS.QueryREPARACIONES.FieldByName('COD_REPARACIONES').AsString;
Modulo_DATOS.TablaREPARACIONES.Locate('COD_REPARACIONES',Codigo,[]);
end;
pero no se inmuta la tabla, la he puesto en otro DBGrid para ver su funcionamiento.
Responder Con Cita
  #16  
Antiguo 22-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
La verdad a mi me gustaria ver el programa y la BD que me imagino es Access.
Si pudieras subirla a algun lado, seria muy bueno ver lo que estas haciendo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #17  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
es mysql creada en phpmyadmin del mismo instalador xampp.
a ver como puedo subir esto, aunque en realidad lo que he echo aun no es nada solo eso..
la idea es un programa taller donde creo una tabla general de reparaciones y luego la indexo con tabla cliente y aparato cor su codigo principal de cada tabla.
El caso es que tengo un programa hace mucho tiempo en DB paradox pero la queria cambiar a mysql, para eso de ver si luego esos datos los puedo ver tambien en un navegador por php.
Responder Con Cita
  #18  
Antiguo 22-09-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Pensa2r Ver Mensaje
Probado lo que comenta CAROL :

pero no se inmuta la tabla, la he puesto en otro DBGrid para ver su funcionamiento.
Hola de nuevo, prueba así:

Código Delphi [-]
Codigo := Trim(Modulo_DATOS.QueryREPARACIONES.FieldByName('COD_REPARACIONES').AsString);
if Modulo_DATOS.TablaREPARACIONES.Locate('COD_REPARACIONES',Codigo,[]) then
  showmessage('coinciden los datos')
else
 showmessage('no coinciden');

y dinos que mensaje te muestra.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #19  
Antiguo 22-09-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Si eso estoy entendiendo yo tambien, lo que pasa es que estoy tratando de ver como podemos elminar el AdoTable y usar la misma consulta para que nos traiga lo que necesita.
Ya sabes, complicandome la vida...........
.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #20  
Antiguo 22-09-2010
Pensa2r Pensa2r is offline
Miembro
 
Registrado: jun 2006
Posts: 35
Poder: 0
Pensa2r Va por buen camino
Cita:
Empezado por Caro Ver Mensaje
Hola de nuevo, prueba así:

Código Delphi [-]
y dinos que mensaje te muestra.

Saluditos
COINCIDEN LOS DATOS.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ordenar una table numericamente por un campo alfanumerico jose.mendez Tablas planas 2 31-12-2007 17:56:16
Modificar datos en un Grid (table o query) hugohiram SQL 6 07-06-2007 18:59:20
conexion a bbdd con query y table ElDioni Conexión con bases de datos 9 22-09-2005 16:06:02
modificar campo en table de interbase supermilloriver Conexión con bases de datos 1 19-08-2005 14:28:39
Buscar texto en campo con un Query pgraciap Tablas planas 8 20-05-2003 16:43:17


La franja horaria es GMT +2. Ahora son las 17:33:41.


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