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 08-02-2007
albertillo albertillo is offline
Registrado
 
Registrado: ene 2007
Posts: 9
Poder: 0
albertillo Va por buen camino
Como puedo recoger los errores de Oracle

Hola gente, tengo un problema.
No puedo recoger bien los errores que proporciona oracle xq delphi lo interpreta siempre con el mismo codigo de error.

yo dispongo de una funcion que dependiendo del codigo de error que me proporcione e.errors[e.errorcount-1].errorcode muestro un mensaje u otro pero el problema es que siempre tengo el mismo codigo de error aunq sea el error de oracle distinto.
Ahi os muestro la funcion q utilizo para mostrar los errores, que es llamada en el try de abajo

Última edición por albertillo fecha: 08-02-2007 a las 17:28:52.
Responder Con Cita
  #2  
Antiguo 08-02-2007
albertillo albertillo is offline
Registrado
 
Registrado: ene 2007
Posts: 9
Poder: 0
albertillo Va por buen camino
Desde aki llamo al procedimiento que me muestra los mensajes

Código Delphi [-]

try
                //Indicamos el codigo q puede dar error

                t.post;

                except

                //Indicamos los posibles casos de errores

                on e:edbengineerror  do begin
                        t.cancel;
                        mostrarmensajes(inttostr(e.errors[e.errorcount-1].errorcode));
                        //e.errors[] es la pila dnd se almacenan los errores
                        //e.errorcount nos dice el numero de errores almacenados en la pila
                        //e.errors[e.errorcount-1].errorcode nos dice el codigo del último error
                end;

                on e:edatabaseerror  do begin
                        t.cancel;
                        showmessage(e.message);
                        end;
                end;
Responder Con Cita
  #3  
Antiguo 08-02-2007
albertillo albertillo is offline
Registrado
 
Registrado: ene 2007
Posts: 9
Poder: 0
albertillo Va por buen camino
Esta es la unidad que contiene el procedimiento que muestra los mensajes.
El problema es q siempre recojo el mismo codigo de error.

Código Delphi [-]

unit UErrores;

interface

uses
Dialogs;

//declaramos el prototipo de la funcion

procedure mostrarmensajes(cod: string);

implementation

procedure mostrarmensajes(cod: string);
        begin
        if cod='9729' then
                Showmessage('Violación de clave')
        else
                if cod='9733' then
                Showmessage('No puede asociar un registro que no existe')

                else
                        if cod='9734' then
                        Showmessage('No puede borrar el registro. Tiene registros asociados')

                        else
                                if cod='10241' then
                                Showmessage('No se puede abrir la tabla, está abierta por otro usuario')

                                else

                                Showmessage('Error desconocido');
                                






        end;



end.
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
Recoger parametros de una web albertoP Internet 5 15-10-2006 17:49:26
no puedo conectarme a oracle error de idapi32.cfg jaimelo Conexión con bases de datos 1 12-08-2004 18:23:47
Recoger errores SQL ronson Firebird e Interbase 1 27-05-2004 18:09:05
Recoger en BDLookUpComboBox bustio Conexión con bases de datos 1 09-01-2004 22:54:08
Recoger datos de Word RaulChemical Impresión 0 01-10-2003 16:23:34


La franja horaria es GMT +2. Ahora son las 13:06:00.


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