Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problemas con una Consulta. (https://www.clubdelphi.com/foros/showthread.php?t=39525)

DeLiRioS 23-01-2007 05:10:54

Problemas con una Consulta.
 
Hola amigos, si alquien me hecha una manita. Uso Delphi 7, y MySql, Mysql Font, mi programa al darle click al boton "buscar" me muestra el registro siguiente y no el que busco, y si le hago click nuevamente recien ahi me muestra lo que buscaba. Este es mi codigo:

procedure TFrm_Editar.Button1Click(Sender: TObject);
Begin
If (DM.Expedientes.Locate('codigo',Edt_Buscar.Text,[]) = True) Then
Begin
Edt_Causante.Text := DM.Expedientes.FieldByName('Causante').DisplayText;
End;
end;


Se los voy agradecer.

Lepe 23-01-2007 11:50:18

No tiene lógica, el código debería funcionar, quizás con locaseinsensitive llegue mejor al resultado en las opciones del locate.

Saludos

DeLiRioS 24-01-2007 17:15:19

Quizas me exprese un poco mal. Lo que quiero decir es lo siguiente:
Supongamos tengo 8 registros, si busco el 2, me muestra el siguiente osea el 3. Si busco el 6 me muestra el 7 y asi. Pero si le doy 2 click encuentra el registro q busco.

1
2
3
4
5
6
7
8

Y ese codigo q puse lo use en otro programita y funciona muy bien. :S que podría ser.?

vtdeleon 24-01-2007 22:26:52

Cita:

Empezado por Lepe
No tiene lógica, el código debería funcionar,...

Lo mismo digo.
Cita:

Empezado por Delirios
Quizas me exprese un poco mal. Lo que quiero decir es lo siguiente:
Supongamos tengo 8 registros, si busco el 2, me muestra el siguiente osea el 3. Si busco el 6 me muestra el 7 y asi. Pero si le doy 2 click encuentra el registro q busco.

Es extra~o el comportameinto.

Lepe 25-01-2007 01:26:06

Para intentar buscarle alguna explicación, seguro que tienes algún fallo colateral, por ejemplo en el evento afterScroll haces algo que hace avanzar el registro hacia delante.... no es esta causa en sí misma, sino algo parecido lo que puede estar pasando, algo que haces en otro evento, está afectando cuando haces el locate.

Quizás lo he enredado más.... no sé ... :D

Saludos

DeLiRioS 27-01-2007 08:42:44

:)
 
Hola de nuevo, pues lo que dice lepe puede que tenga razon , quizas algo efecto colateral. Lo que hice por el momento es escribir 2 veces la linea del locate

If (DM.Expedientes.Locate('codigo',Edt_Buscar.Text,[]) = True) Then
If (DM.Expedientes.Locate('codigo',Edt_Buscar.Text,[]) = True) Then

Aunque sea tonto pero asi funciona. Desde ya muchas gracias amigos, les estoy agradecido por su atención saludos desde Argentina.- :)


La franja horaria es GMT +2. Ahora son las 11:19:22.

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