Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-09-2006
Avatar de Goyo
Goyo Goyo is offline
Miembro
 
Registrado: feb 2006
Posts: 89
Poder: 19
Goyo Va por buen camino
Question Forzar captura datos en un DBEdit

tengo un formulario con varios dbgrid, pero lo que deseo hacer es que antes de que se salga del Dbedit me mande un mensaje que ese DBEdit no puede estar vacio, bueno les explico...

para que pueda yo grabar necesito dos campos (FechadeServicio e Importe) cada uno lo tengo en un DBedit... FechadeServicio esta asociado al DBFecha e Importe al DBImporte, en el campo FechaImporte desde sus propiedades EditMask le asigne un formato: EditMask =!99/99/0000;1;_ ,
Responder Con Cita
  #2  
Antiguo 19-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Para validar un campo podrías usar el evento OnExit del DBEdit, o bien el OnValidate del TField asociado. La segunda forma, en mi opinión, es más correcta porque te permite validar el campo independientemente de la interfaz que uses para introducir los datos.

// Saludos
Responder Con Cita
  #3  
Antiguo 19-09-2006
Avatar de Goyo
Goyo Goyo is offline
Miembro
 
Registrado: feb 2006
Posts: 89
Poder: 19
Goyo Va por buen camino
lo hice tal como me indicaste, solo que me marca un error

Código Delphi [-]
procedure TDM.TbBitacoraFechadeServicioValidate(Sender: TField);
begin
  if DM.TbBitacoraFechadeServicio=' ' then
     messageDlg ('Es necesario introducir la Fecha');
end;

me manda el siguiente error:
[Error] ModuloDatos.pas[65]: Inconpatible Types: 'String' and 'TDataFile'
[Error] ModuloDatos.pas[66]: Undeclared identifier: 'MessageDlg'
Responder Con Cita
  #4  
Antiguo 19-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿TDataFile? Más bien ha de ser TDateField.

Prueba haciendo la comparación así:

Código Delphi [-]
if DM.TbBitacoraFechadeServicio.IsNull then
  messageDlg ('Es necesario introducir la Fecha');

El segundo error es porque no has inlcuido la unidad Dialogs. Por otra parte, lo que conviene hacer aquí- según puedes ver en la ayuda de Delphi -es lanzar una excepción y no sólo mostrar un mensaje:

Código Delphi [-]
if DM.TbBitacoraFechadeServicio.IsNull then
  Exception.Create('Es necesario introducir la Fecha');

// Saludos
Responder Con Cita
  #5  
Antiguo 20-09-2006
Avatar de Goyo
Goyo Goyo is offline
Miembro
 
Registrado: feb 2006
Posts: 89
Poder: 19
Goyo Va por buen camino
ya lo escribi tal como me indicaste.... quedando de la siguiente manera:
Código Delphi [-]
procedure TDM.TbBitacoraFechadeServicioValidate(Sender: TField);
begin
if DM.TbBitacoraFechadeServicio.IsNull then
  messageDlg('Es necesario introducir la Fecha', mtError, [mbOk],0);
end;

Cuando capturo no capturo o no pongo nada en este campo (FechadeServicio) del DBFecha, no me manda ningun error, ni mucho menos me manda algun mensaje, solo se pasa al siguiente campo... como puedo solucionarlo, estoy escribiendo algo mal...
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
Convertir datos DBEdit tipo $ a numero destrukthor Varios 12 26-06-2006 16:35:51
Captura Datos Com1 EdyBay Varios 2 04-08-2005 14:49:05
Visualizar datos en un dbedit dsa132132 OOP 7 13-07-2004 19:33:44
Introduccion datos en IB mediante DBedit tomasgarcia Firebird e Interbase 2 09-07-2004 17:46:08
como validar datos en el evento onkeypress de un dbedit? viajero2015 Varios 1 01-02-2004 21:41:59


La franja horaria es GMT +2. Ahora son las 20:45:31.


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