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 15-05-2007
Avatar de Goyo
Goyo Goyo is offline
Miembro
 
Registrado: feb 2006
Posts: 89
Poder: 19
Goyo Va por buen camino
Question enviar mensajes de error en campos obligatorios y clave unica

Referente al hilo que hizo Marcoszorrilla ver hilo original, quisiera saber donde poner estos procedimiento, dentro de que parte de mi codigo, para ello les comento que tengo 5 tablas, TEmpleados, TDepartamentos, TDirecciones, TEspecialidades, y TPuestos; ademas tengo un modulo "DM"

es precisamente lo que necesito, solo que no se donde ponerlo (en que parte de mi codigo)

Cita:
Procedure midberror(DataSet: TDataSet; E: EDatabaseError);
//…….
Const
eKeyViol = 9729;
eRequiredFieldMissing = 9732;
eForeignKey = 9733;
eDetailsExist = 9734;
eSqlGralerror = 13059;
eInvalidTime = 10058;
eInvalidDate = 75;
EinvalidDateTime=10060;
eRegisterLocked= 10241;

//implementation
//……

Procedure midberror(DataSet: TDataSet; E: EDatabaseError);
var
mierror:double;
begin
mierror:= (E as EDBEngineError).Errors[0].Errorcode;

if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].Errorcode = eKeyViol then
begin
Application.MessageBox('Imposible dar alta ese registro ya existe','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

if (E as EDBEngineError).Errors[0].Errorcode = eRequiredFieldMissing then
begin
Application.MessageBox('Imposible dar alta hay un campo vacio.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

if (E as EDBEngineError).Errors[0].Errorcode = eInvalidTime then
begin
Application.MessageBox('Formato de hora incorrecto.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

if (E as EDBEngineError).Errors[0].Errorcode = eInvalidDate then
begin
Application.MessageBox('Formato de fecha incorrecto.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

if (E as EDBEngineError).Errors[0].Errorcode = eInvalidDateTime then
begin
Application.MessageBox('Formato de fecha-hora incorrecto.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

//campo en blanco
if (E as EDBEngineError).Errors[0].Errorcode = eSqlGralerror then
begin
Application.MessageBox('Imposible dar alta hay un campo requerido vacío.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

//Registro bloqueado
if (E as EDBEngineError).Errors[0].Errorcode = eRegisterLocked then
begin
Application.MessageBox('Imposible hacer modificaciones registro bloqueado por otro usuario.','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;

end;

//aqui capturamos el error de bloqueo
procedure TdmoPalma.CliEditError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
midberror(cli,e);
end;

procedure TdmoPalma.CliPostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
midberror(cli,e);
end;
Las tablas las tengo en paradox y no trabaja en red

Última edición por Goyo fecha: 15-05-2007 a las 23:23:56.
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
enviar mensajes en la red... uper Varios 4 25-02-2009 18:46:09
Problemas con claves primarias y campos obligatorios Bitbanner Conexión con bases de datos 1 09-02-2005 11:20:31
Problemas al generar una clave unica Huer OOP 6 09-06-2004 02:58:57
Validar clave unica en Paradox dchaparro Tablas planas 6 20-04-2004 01:34:58
Quiero enviar mensajes a Windows champy API de Windows 3 25-11-2003 00:32:15


La franja horaria es GMT +2. Ahora son las 21:28:02.


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