![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#2
|
||||
|
||||
|
Una excepción busca el del try except más cercano, si no tienes ninguno en
tu aplicación, se genera el evento Application.OnException (delphi 6 o superior, componente TapplicationEvents, si mal no recuerdo), Si tampoco tienes código en ese evento, o no la cancelas la excepción, entonces aparece el mensaje en pantalla, y casi siempre en inglés. Tu caso particular es complejo, pero es simple la solución: Tal como lo comentas, las llamadas en cascada se pueden producir así: Aumentar_Orden Cambiar_Lote, Cambiar_Grupo, Cambiar_Caja
Es decir, el programa iría de arriba de este código, hacia abajo, pero cuando se produce la excepción, hace lo que hay en el try except, y al estar la palabra reservada raise;, el código se empieza a ejecutar hacia arriba, entrando en todas las cláusulas except y deshaciendo todos los cambios hechos en la base de datos. Un saludo, y espero se entienda.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 13-04-2005 a las 19:18:14. |
|
|
|