Delphi - Ayuda!!! Validar BaseDatos

 
Vista:

Ayuda!!! Validar BaseDatos

Publicado por michelle (5 intervenciones) el 09/11/2006 01:12:00
Hola...
haber quien me puede ayudar...
Tengo dos problemas uno es que nose como hacerle para que cuando yo introduzca en un Edit el id_cliente, me despliegue en otras cajas de textos sus respectivos datos datos (nombre, direccion, telefono). Nose que procedimiento utilizar...o nose si ocupe alguna otra cosa que no sea una caja de texto...

*****OJO******* no quiero que sea al darle click a un boton cuando despliegue, quiero que sea automaticamente cuando ya introduje la clave del cliente en la caja de texto, o cuando de enter despues de introducir la clave.

tengo la tabla

Clientes

campos:

id_cliente --- clave primaria
nombre --- char
direccion ---char

El segundo problema es que nose como hacerle para no capturar dos vece a un mismo cliente, solo que no quiero que valide al darle click a un boton, sino automaticamente despues de introducir el nombre en una caja de texto. Ya sea que me mande un mensaje de que el cliente ya existe...

De antemano gracias.. : )
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda!!! Validar BaseDatos

Publicado por BigLuis (713 intervenciones) el 09/11/2006 08:36:39
Ambos casos los puedes resolver con una consulta SQL, pero piensa que siempre tendras que realizar alguna accion para lanzarla o bien desde un boton o al pulsar enter etc. ya que la aplicacion, de momento, no tiene la suficiente inteligencia para saber en que momento tiene que buscar si no se le dice, a no ser que a partir del caracter nº X introducido lance la consulta automaticamente cada vez que se introduce uno nuevo.

En el primer supuesto podría ser SELECT * from clientes WHERE id_cliente=:cli;
Query.Parambyname('cli').AsInteger:=strtoint(Edit1.text);
Query.Open;
En este caso yo añadiria un campo mas con el documento de identidad del cliente y buscar por ese campo ya que es unico , inalterable y de permamnente conocimiento por ti, contrariamente a lo que sucede con el Id_cliente que es un numero asignado por la BD y el 99% de los casos no sabes que numero corresponde a cada cliente y menos cuando tengas 100000 registros. El nombre tampoco es buena idea ya que Jose Enrique VARELA VARELA unas veces se introducira como Jose otras como Enrique etc.

En el segundo te reitero lo anterior la consulta se ha de lanzar en algun momento que puede ser al pulsar un boton o al alcanzar la cadena introducida en el TEdit una longitud determinada ya que el programa no puede adivinar cuando tu has acabado de introducir el nombre completo. La consulta podria ser:
SELEC COUNT(*) from clientes WHERE nombre=:nom;
Query.Parambyname('nom').AsString:=Edit1.text;
Query.Open;
if Query.Fields[0].asinteger>0 then
showmessage('Ya existe el registro');
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda!!! Validar BaseDatos

Publicado por michelle (1 intervención) el 09/11/2006 23:51:58
gracias... me sirvio de mucho tu ayuda..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar