![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Gracias por las respuestas
Primero debo aclarar que aunque parezca raro: ¡ funciona ! (yo mismo no lo creia) rastafarey: no es recursión La idea -simplificada- es: La primera tabla recibe los datos del cliente, luego de insertarlos (after insert) el servidor llama al procedimiento que pasa los datos correspondientes a otra tabla (en este proceso se genera el Nº de ID) y luego se envia (update) el Nº de ID a la primera tabla. Lepe: La idea de usar el before insert me parece interesante, pero considerando el caso: (la primera tabla guarda el servicio prestado y luego de "prestado el servicio" se llama al SP para que cree la cuenta por pagar) supongo que el resultado final sería el mismo, pero prefiero almacenar primero el servicio y luego crear la deuda. debo aclarar que no domino mucho la programación del lado del servidor en firebird (es mi 1ra applicación) así que el tema de las vistas ó usar el "position 1" escapan de mis conocimientos ...por ahora ![]()
__________________
Sitrico |
|
#2
|
||||
|
||||
|
Todod el proceso se realiza en una transacción, por tanto, si una de las dos cosas falla, se deshace el proceso completo. Por eso no importa crear primero la deuda que el servicio, aunque como dices, parece lógico hacerlo al revés.
El "position 1" es un parámetro al tiempo de crear varios triggers after insert para una misma tabla, con ese parámetro indicas en qué orden deben ejecutarse esos triggers (no sé si tienes ya un trigger before insert o no). La vista, échale una ojeada ya mismo. Seguro que tendrás que hacer varios inner joins cuando quieres acceder a las tablas, con la vista, te evitas hacerlos. Ya puedes acceder a esta vista como si fuera una tabla más, con la peculiaridad de reunir información de varias tablas al mismo tiempo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#3
|
||||
|
||||
|
Gracias lepe, no conocía las vistas, por lo que te entendí trabajan como una suerte de tabla "virtual", almacenando un select (complejo) para devolver los datos solicitados
Bueno a leer un rato...
__________________
Sitrico |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| No se dispara mas KeyDown con TAB | Monchi | Varios | 0 | 28-03-2007 18:47:42 |
| Trigger se dispara sin Commit | jevo19100 | Firebird e Interbase | 5 | 13-03-2007 19:00:09 |
| usando SQLCODE en procedimiento /trigger | ASAPLTDA | Firebird e Interbase | 1 | 05-01-2006 15:35:41 |
| Evento que se dispara al dar foco nuevamente al 1er form | RJF | Varios | 2 | 07-12-2005 15:17:52 |
| Ejecutar Procedimiento Almacenado en Trigger | AGAG4 | SQL | 16 | 21-09-2004 04:27:47 |
|