Club Delphi  
    Paypal   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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-06-2006
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 24
Caro Va por buen camino
onValidate de un campo (Excepciones)

Hola a todos

Quisiera poder validar dos campos de mi debgrid uno es el precio de tipo float y el otro es la fecha de tipo date, he leido hilos referente a esto y he hecho muchas pruebas pero aun no me funciona, estoy desesperada les agradeceria un monton a todos los que pudieran ayudarme.

Hice las siguientes pruebas

Código Delphi [-]
type
  EFecha = class(Exception)
....
 
procedure TCompras.qryfechaValidate(Sender: TField);
var
  fch: TDateTime;
begin
  if  not TryStrToDate(Sender.AsString,fch) then
  begin
    raise EFecha.Create('Fecha Incorrecta');
  end
end;

tambien he probado estos otros dentro del evento onValidate del campo fecha

Código Delphi [-]
   try
      StrToDate(Sender.AsString);
   except
      on exception do ShowMessage('Fecha Incorrecta');
   end;

Código Delphi [-]
   try
      StrToDate(Sender.AsString);
   except
      on EConvertError do ShowMessage('Fecha Incorrecta');
      else
          ShowMessage('Fecha Incorrecta'); 
   end;

en todos estos casos si borro todo lo que hay en la celda del dbgrid donde esta la fecha y salgo a otra celda se lanza mi excepción y me saca el mensaje de 'fecha incorrecta' pero si escribo digamos 54 que no llegaria a ser una fecha me saca este mensaje

'54' is not a valid date and time

y yo quiero que me saque el mensaje que he puesto pero nose porque no lo saca he probado de las formas que puse arriba y nada de nada que funciona en este caso, que estoy haciendo mal me pueden orientar por favor.

Y en el caso del precio con lo siguiente

Código Delphi [-]
   try
      StrToCurr(Sender.AsString);
   except
      on exception do ShowMessage('Precio Incorrecto');
   end;

si escribimos 45,,57 el error serian las dos comas y tampoco veo el mensaje que yo pongo sino lo siguiente.

45,,57 is not a valid floating point value for field 'precio'

como le hago para que salgan mis mensajes en estos casos.

Delphi7, Access

Saludos y que tengan un bonito dia
__________________
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
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
como validar en el evento onvalidate con numeros... uper Varios 1 25-10-2005 20:06:49
OnValidate .. No funciona en IB? PINO72 Firebird e Interbase 4 12-04-2005 16:15:17
Onvalidate Como se usa servicomp Conexión con bases de datos 1 16-02-2005 04:46:05
OnValidate javiermorales OOP 5 13-11-2003 15:52:52
OnValidate y Foco javiermorales OOP 9 21-05-2003 08:10:16


La franja horaria es GMT +2. Ahora son las 19:38:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi