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 23-09-2007
Avatar de novato03
novato03 novato03 is offline
Miembro
 
Registrado: ago 2007
Posts: 45
Poder: 0
novato03 Va por buen camino
Question ADOquery y MaskEdit

Hola amigos del clubdelphi, otra vez estoy por aquí con el asunto de los maskedit, tengo el siguiente código para realizar consulta por teléfono en este formato (999)999-9999.

Código Delphi [-]
procedure TFrmConsultacontactos.Button5Click(Sender: TObject);
begin
Dmodulo.AQcontactos.Close;
Dmodulo.AQcontactos.Sql.Clear;
Dmodulo.AQcontactos.SQL.Text:= 'select * from contactos';
Dmodulo.AQcontactos.Sql.Add('where telefono1 = '+#13+QuotedStr(MaskEdit1.Text)+#13);
Dmodulo.AQcontactos.Open;

if Dmodulo.AQcontactos.EOF then
begin
showmessage('Resgistro no existe');
MaskEdit1.Text:='';
MaskEdit1.setfocus;
end;
end;

funciona perfectamente si lleno por el completo el maskedit, el problema se presenta cuando por el ejemplo la realizo de forma incompleta como (809)999- y así sucesivamente, el caso es que no me dejar realizar consultas incompleta sin darme un error, claro se presuntarán ¿por qué realizar una consulta incompleta?, en realidad la pruebo de esta forma para evitar posibles errores de ejecución si algún usuario por cosa de la vida introduce un número incompleto.

Este es el error que presenta:

Cita:
Project Sisconem.exe raised exception class EDBEditError with message 'Invalid input value. Use escape key abandon changes'. Process stopped. Use Step or Run to continue.
Espero haberme explicado bien, gracias de antemano...
Responder Con Cita
  #2  
Antiguo 24-09-2007
waly2k1 waly2k1 is offline
Miembro
 
Registrado: dic 2006
Ubicación: El país de las maravillas(Argentina)
Posts: 251
Poder: 18
waly2k1 Va por buen camino
Rta...

Edité tu código y quedó algo así, creo debería funcionar, otra cosa
si pones un maskedit es para que el usuario no ingrese cualquier cosa, entonces por qué no validas que el ingreso sea correcto ?


procedure TFrmConsultacontactos.Button5Click(Sender: TObject);
begin
Dmodulo.AQcontactos.Close;
Dmodulo.AQcontactos.Sql.Clear;
Dmodulo.AQcontactos.Sql.Text := 'SELECT * FROM Contactos WHERE Telefono1 LIKE ' + QuotedStr( MaskEdit1.Text + '%' );
Dmodulo.AQcontactos.Open;

if Dmodulo.AQcontactos.EOF then
begin
showmessage( 'REGISTRO INEXISTENTE' );
MaskEdit1.Text := '';
MaskEdit1.SetFocus;
end;
end;


Saludos y espero te sirva.

Última edición por waly2k1 fecha: 24-09-2007 a las 04:03:19.
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
MaskEdit NuncaMas Varios 11 07-01-2010 13:11:08
Filtros con maskedit novato03 Conexión con bases de datos 10 24-09-2007 11:56:23
Maskedit No Me Funciona Andrés Aguirre OOP 4 04-05-2006 02:58:21
MaskEdit!! JCarlos OOP 3 19-01-2005 20:45:32
MaskEdit scooterjgm OOP 5 20-09-2004 07:13:12


La franja horaria es GMT +2. Ahora son las 07:29:59.


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