FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
tal vez no puedas
Tal vez no puedas detectar el error ya que no es un Exception o un EDataBaseError, prueba con EIBInterbaseError
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' |
#2
|
|||
|
|||
lo intenté así y nada, se sigue de largo, despues de ejecutar la línea
cds1.ApplyUpdates(-1); y marcar el error de "EDatabaseError primary key violation..." no ejecuta mi código de excepción. Alguna idea?? try cds1.Post; if (cds1.ChangeCount > 0) then cds1.ApplyUpdates(-1); except on E: EIBInterbaseError do begin ShowMessage('Error al guardar la manifestación'); end; Cita:
|
#3
|
|||
|
|||
Lo que te falta es añadir la libreria IB en la sección de declaracion de librerias de la interfaz de tu unidad ....
interface uses IB, .... el resto de las unidades por defecto Espero que te haya podido ayudar! |
#4
|
|||
|
|||
ya tengo esa libreria (IB) y tambien DB, y nada, nunca detecta la excepción, se sigue de largo...
Otra Idea ?? Adán Cita:
|
#5
|
|||
|
|||
Hola:
Algo que puedes hacer es utilizar el ApplyUpdates de esta manera if DATASET.ApplyUpdates(0) > 0 then begin messagebox('No se inserto el registro en la base de datos'); DATASET.cancel; exit; end if Creo que esta es una forma, porque ApplyUpdates devuelve la cantidad de errores que produjeron al aplicar los cambios en la base de datos. Espero que te ayude. Saludos |
#6
|
|||
|
|||
Algo que no me percate fue:
El TRY tienes el EIBDatabaseException y el error lo esta produccion el EDatabaseException que se encuentra en DB. |
#7
|
|||
|
|||
Reconcile
prueba hacer un reconcile del cds
|
|
|
|