Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

controlar excepcion

Estas en el tema de controlar excepcion en el foro de Oracle en Foros del Web. Hola. Tengo un formulario que se llama eliminarcliente, y que contiene varios campos entre ellos el dni, cuando se busca a un cliente si existe ...
  #1 (permalink)  
Antiguo 10/06/2009, 06:16
 
Fecha de Ingreso: enero-2009
Mensajes: 30
Antigüedad: 15 años, 9 meses
Puntos: 0
controlar excepcion

Hola. Tengo un formulario que se llama eliminarcliente, y que contiene varios campos entre ellos el dni, cuando se busca a un cliente si existe se muestran todos los campos del formulario con sus datos, pero si no existe, no se muestra nada en ellos, lo que quiero es que si esos campos no tienen ningun dato, y se le da a un boton que hay en el formulario para eliminar el registro, salga un mensaje diciendo de que no hay nungun registro seleccionado.

Lo que tengo puesto en el boton eliminar es esto:

DECLARE
NOEXISTE EXCEPTION;
BEGIN
IF :ELIMINARCLIENTE.DNI=NULL THEN
RAISE NOEXISTE;
END IF;
.........
EXCEPTION
WHEN NOEXISTE THEN message('No hay ningun registro');
END;

Pero no me funciona.
  #2 (permalink)  
Antiguo 10/06/2009, 10:01
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: controlar excepcion

Creo que es esto :

IF :ELIMINARCLIENTE.DNI=NULL

Cambialo por IF :ELIMINARCLIENTE.DNI IS NULL

a ver que pasa

Ah, y cambia esto

EXCEPTION
WHEN NOEXISTE THEN message('No hay ningun registro');
END;

Por esto

EXCEPTION
WHEN NOEXISTE THEN
message('No hay ningun registro');
message('No hay ningun registro');
END;

Eso hace que te salga la ventanita de "aviso" con el mensaje en lugar de sacarte el mensaje al pie de la pantalla.

Ya nos contarás.

Última edición por jc3000; 10/06/2009 a las 10:36
  #3 (permalink)  
Antiguo 14/06/2009, 09:01
 
Fecha de Ingreso: enero-2009
Mensajes: 30
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: controlar excepcion

Muchas gracias, lo he probado y funciona perfectamente, ademas me resolviste otra duda que era de como mostrar el mensaje de alerta en una ventana.
  #4 (permalink)  
Antiguo 14/06/2009, 13:24
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: controlar excepcion

Me alegro de haberte aportado algo.

De todas maneras, busca informacion sobre las alertas, son muy sencillas de programar y utilizar y mas "limpias" que el message/message.

Para tracear el funcionamiento de una pantalla el message/message está muy bien, pero para una buena programación usa las alertas.
  #5 (permalink)  
Antiguo 15/06/2009, 10:03
 
Fecha de Ingreso: enero-2009
Mensajes: 30
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: controlar excepcion

Conoces algun documento donde expliquen claramente el funcionamiento de las alertas?

Gracias
  #6 (permalink)  
Antiguo 15/06/2009, 13:08
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: controlar excepcion

No, pero en la ayuda del form builder se explica muy bien y con ejemplos.

Haz copy-paste de uno y ves como funcionan.
  #7 (permalink)  
Antiguo 15/06/2009, 15:42
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 8 meses
Puntos: 7
Respuesta: controlar excepcion

chacate informacion sobre la variable de sistema

system.message_level

eso de poner el doble message es segun el nivel que tenga message_level
__________________
Blogzote.com :-) Mi blog
  #8 (permalink)  
Antiguo 17/06/2009, 01:22
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: controlar excepcion

Cita:
Iniciado por kikolice Ver Mensaje
chacate informacion sobre la variable de sistema

system.message_level

eso de poner el doble message es segun el nivel que tenga message_level
Eso no es correcto, compañero.

Si pones el doble MESSAGE te va a salir la ventana de aviso, esté el :SYSTEM.MESSAGE_LEVEL en 5 ó en 25

Saludos
  #9 (permalink)  
Antiguo 17/06/2009, 02:53
 
Fecha de Ingreso: enero-2009
Mensajes: 30
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: controlar excepcion

si, el system.message_level puesto en 5 por ejemplo te evita un mensaje de alerta cuando haces el commit
  #10 (permalink)  
Antiguo 17/06/2009, 06:46
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: controlar excepcion

Yo , como consejo personal mio, recomiendo no tocarlo. Si lo cambias
y no lo controlas puedes pasar por alto errores.
  #11 (permalink)  
Antiguo 17/06/2009, 15:56
 
Fecha de Ingreso: enero-2009
Mensajes: 30
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: controlar excepcion

Lo cambie porque si no al hacer un insert me salia un mensaje de alerta y no sabia otra forma de evitarlo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:18.