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 09-06-2004
maui maui is offline
Miembro
 
Registrado: may 2003
Ubicación: chile
Posts: 40
Poder: 0
maui Va por buen camino
problemas con locate

hola comunidad

tengo el sigte problema:

tengo dos campos codigo(tedit) y nombre(tdbedit)

ingreso el codigo y no me muestra el nombre automaticamente.

estoy utilizando el sigte codigo:

Código Delphi [-]
procedure TFrmSolicitudVta.qryVentaOnChange(Sender: TObject);
begin
qryVenta.First;
qryVenta.Locate('IDEMPLEADO',Edit2.Text,[]);
qryVenta.next;
end;
¿como puedo mejorar el codigo?

espero sus valiosos comentarios....

de ante mano gracias
__________________
m/m/m

Última edición por __cadetill fecha: 09-06-2004 a las 18:39:00. Razón: poner bien la etiqueta [delphi]..[/delphi]
Responder Con Cita
  #2  
Antiguo 09-06-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.934
Poder: 27
delphi.com.ar Va por buen camino
No se que es lo que quieres hacer, pero fíjate que una vez ubicado el registro, en el caso de que este exista, estas moviendo una posición el DataSet (qryVenta.next).

PD: Las etiquetas [delphi] llevan corchetes!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 09-06-2004
maui maui is offline
Miembro
 
Registrado: may 2003
Ubicación: chile
Posts: 40
Poder: 0
maui Va por buen camino
gracias por contestar

lo que quiero hacer es ingresar un codigo en un tedit y luego aparesca automaticamente:

ej: codigo: 111 nombre(tdbedit): perico (este se despliege automatico).

como lo puedo hacer, me puedes enviar un codigo de ejemplo.

espero sus valiosos comentarios...
__________________
m/m/m
Responder Con Cita
  #4  
Antiguo 09-06-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.934
Poder: 27
delphi.com.ar Va por buen camino
Podrías hacerlo de varias formas, o bien cuando el usuario presione alguna tecla en particular, por ejemplo ENTER como seña de confirmación de la búsqueda, o cuando el editor pierda el foco, o despues de N tiepo de producirce la última modificación.
La utilización del locate es simplemente como escribes en tu código.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 09-06-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Pues tal y como lo haces, pero sin el Next

Y el First tampoco es necesario

Para el tipo de búsqueda, te recomiendo mires en la ayuda la función locate y revises el tercer parámetro de la función

EDIT: vaya, d.c.a se me adelantó
Responder Con Cita
  #6  
Antiguo 09-06-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.934
Poder: 27
delphi.com.ar Va por buen camino
Agrego algo que he olvidado: Tienes que tener en cuenta que el locate hace una búsqueda en los resultados del DataSet desde el lado del cliente, no del servidor. Si el set de resultados es algo grande, los Locates serán algo lentos y un DataSet demasiado grande puede reducir drásticamente los recursos del sistema. Lo recomendable para estos casos, es utilizar consultas Sql seleccionando únicamente los datos necesarios.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #7  
Antiguo 09-06-2004
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
Mira tu problema es sencillo

1.- El evento donde estas programando la busqueda, debes programarla en el evento onExit del TEdit

2.- Como decia Delphi.com.ar el query.next esta demas

Suerte
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #8  
Antiguo 09-06-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.934
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por eduarcol
2.- Como decia Delphi.com.ar el query.next esta demas
Y como agregó cadetill... El query.Fist también (ese ni lo he visto )
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #9  
Antiguo 10-06-2004
maui maui is offline
Miembro
 
Registrado: may 2003
Ubicación: chile
Posts: 40
Poder: 0
maui Va por buen camino
hola eduarcol y amigos del foro

1.- El evento donde estas programando la busqueda, debes programarla en el evento onExit del TEdit

tengo el sigte codigo:

Código Delphi [-]
procedure TFrmSolicitudVta.qryVentaOnExit(Sender: TObject);
begin
if Edit2.Text <> '' then
qryVenta.Locate('IDEMPLEADO',Edit2.Text,[loCaseInsensitive,loPartialKey]);
end;

todavia tengo problemas no esta haciendo nada...

espero sus comentarios....
__________________
m/m/m
Responder Con Cita
  #10  
Antiguo 10-06-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.934
Poder: 27
delphi.com.ar Va por buen camino
Tienes componentes elazados a este Query???
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #11  
Antiguo 10-06-2004
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
Cita:
Empezado por maui
Código Delphi [-]
procedure TFrmSolicitudVta.qryVentaOnExit(Sender: TObject);
begin
if Edit2.Text <> '' then
qryVenta.Locate('IDEMPLEADO',Edit2.Text,[loCaseInsensitive,loPartialKey]);
end;
Mira fijate que eso lo estas programando, en el evento Exit del query no del edit, colocalo en el evento on exit del TEDIT correspondiente
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
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 20:47:57.


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