Principales respuestas
Comprobar procedimiento antes que se ejecute

Pregunta
-
Buenas Tardes:
Tengo un aplicativo que al oprimir un botón se generan varios códigos, que están en diferentes métodos, los cuales ingresan o actualizan base de datos sql, otro que imprimir el formulario en una hoja de excel y otro que envía correo, para mejorar el orden por cada procedimiento lo dividí en diferentes partes, pero quisiera preguntar si alguna manera que el código se verifique antes de ejecutarse comprobando que este listo todo para que los métodos cumplan sus funciones bien, es decir que verifique que cada modulo se puede ejecutar bien y cuando lo valide se haga la linea completa, es decir el problema que tengo es que por ejemplo el codigo crear el archivo en excel lo guarda, pero sucede que no tiene conexion a la base de datos, hace un procedimiento pero el otro queda nulo o incompleto lo cual genera que la transaccion quede mal registrada en el sistema y tenga que borrar los rastros manualmente.
Quedaría agradecido si alguien podría aclárame esto o darme indicaciones para optimizar el código.
Hhendrix2012 Programattion OK
Respuestas
-
Hola,
quisiera preguntar si alguna manera que el código se verifique antes de ejecutarse comprobando que este listo todo para que los métodos cumplan sus funciones bien
Creo que eso no se puede ya que interviene la linea del tiempo, imaginate el siguiente evento:
-De alguna manera realizas la verificación de los métodos y esta Ok, pero un segundo mas tarde se cae el servicio de SQL server y se va el internet (por lo que dices que envias un correo) entonces que pasaría ?
Sin embargo puedes utilizar transacciones que suplen en gran medida la necesidad que tienes, basicamente lo que hacen es un RollBack de algún bloque de código, entonces si ocurre un error en cualquier linea, la transacción devolvera los cambios y no se aplicará nada.
Sería algo como (en pseudocodigo):
Inicias transaccion
-Ingresas o actualizas base de datos
-Imprime formulario en excel
-Envia correo
Fin transaccion
Ai alguno de los tres procesos fallara, nuestro querido lenguaje de programación (que de hecho debiste haber mencionado) devolvera los cambios (Rollback).
Revisa estos links:
Using TransactionScope for handling transactions
Un saludo, Cristian Pérez
- Marcado como respuesta Hhendrix2012 miércoles, 26 de septiembre de 2012 16:54
Todas las respuestas
-
Hola,
quisiera preguntar si alguna manera que el código se verifique antes de ejecutarse comprobando que este listo todo para que los métodos cumplan sus funciones bien
Creo que eso no se puede ya que interviene la linea del tiempo, imaginate el siguiente evento:
-De alguna manera realizas la verificación de los métodos y esta Ok, pero un segundo mas tarde se cae el servicio de SQL server y se va el internet (por lo que dices que envias un correo) entonces que pasaría ?
Sin embargo puedes utilizar transacciones que suplen en gran medida la necesidad que tienes, basicamente lo que hacen es un RollBack de algún bloque de código, entonces si ocurre un error en cualquier linea, la transacción devolvera los cambios y no se aplicará nada.
Sería algo como (en pseudocodigo):
Inicias transaccion
-Ingresas o actualizas base de datos
-Imprime formulario en excel
-Envia correo
Fin transaccion
Ai alguno de los tres procesos fallara, nuestro querido lenguaje de programación (que de hecho debiste haber mencionado) devolvera los cambios (Rollback).
Revisa estos links:
Using TransactionScope for handling transactions
Un saludo, Cristian Pérez
- Marcado como respuesta Hhendrix2012 miércoles, 26 de septiembre de 2012 16:54
-