FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Manejador de errores
Hola, como puedo en un TClientdataset controlar el error que me llega en el evento OnreconcileError, ya se que con E.message se muestra el mensaje, pero yo quiero utilizar mi propio mensaje de error, o sea dependiendo del Error mostrar un mensaje u otro.
He probado con: if (E as EReconcileError).Errorcode = eKeyViol then begin mmensaje('No se puede guardar, el registro ya existe, ['+e.Message+']',mtwarning,[mbok]); action:=racancel; end Pero E.errorcode vale siempre 1. ¿Que estoy haciendo mal? salu2 |
#2
|
||||
|
||||
¿Por qué el "casting"? ¿No sería mejor manejar directamete la excepción?
Código:
try ... except on E:EReconcileError do .. end; |
#3
|
|||
|
|||
Para mi caso necesito el casting, ya que lo que hago es utilizar un manejador de excepciones que se activa en el evento OnReconcileError:
procedure Tdmgym.tMaterialReconcileError(DataSet: TCustomClientDataSet; E: EReconcileError; UpdateKind: TUpdateKind; var Action: TReconcileAction); begin if (E as EReconcileError).Errorcode = eKeyViol then begin mmensaje('No se puede guardar, el registro ya existe, ['+e.Message+']',mtwarning,[mbok]); action:=racancel; end end; ¿que se podría hacer? salu2 y gracias |
|
|
|