![]() |
![]() |
| 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
|
||||
|
||||
|
El disparador no valida si el campo ya viene con valor. Una buena práctica es añadir un If al código del disparador para no darle valor al campo si éste ya trae uno.
Tcmn no ha dicho qué componentes de acceso está utilizando, pero según lo que comenta sobre las altas y los cancels, estoy casi seguro que: 1. Usa un evento OnNewRecord / AfterInsert de esos componentes para llamar al generador. o bien: 2. Está utilizando IBX con la propiedad GeneratorField.ApplyEvent = gamOnNewRecord (lo cual no es mala idea). Si fuera lo anterior, para resolver el problema creo que bastaría con añadir el clásico "IF (NEW.ID IS NULL) THEN" a los disparadores. A menos que a Tcmn le interese que esas claves sean consecutivas (algo que no debería ser requisito en una llave primaria ).Saludos. ![]() Al González. P.D. Acabo de ver su nuevo comentario donde nos indica que sí está utilizando IBX. Tcmn, ¿cómo estás utilizando la propiedad GeneratorField del componente de datos? Última edición por Al González fecha: 06-10-2010 a las 20:00:58. |
|
#2
|
|||
|
|||
|
Asi es el asunto era poner On server en la propiedad que dice Al Gonzalez.
Asunto solucionado muchas gracias y saludos
__________________
Salu2 |
|
#3
|
||||
|
||||
|
En el futuro no está de más hacer los triggers como ha propuesto Al (te habrías ahorrado este problema, aunque es mejor haberlo tenido y saber exactamente donde estás asignando la clave primaria).
Es decir :
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
|
#4
|
||||
|
||||
|
O bien, si te gusta más esta sintaxis :
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
|
#5
|
||||
|
||||
|
Resp
Los generadores son harina de otro costal. Lo que quiere decir que se escapan del control transacional y lo mas seguro es que lo estas asignando en los componentes(dataset) y aparte lo incrementas en el dispador. Verifica que no sea eso lo que te esta pasando.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Escanear Doble Cara, Doble Lector | karenthyuliana | Gráficos | 2 | 11-04-2008 17:29:42 |
| Incrementa el porcentaje y no imprime. | zugazua2001 | Impresión | 1 | 19-05-2006 08:59:19 |
| generador | novaten | Conexión con bases de datos | 1 | 09-04-2005 21:29:44 |
| Campo clave incrementa | Marcosr_87 | SQL | 8 | 21-11-2004 23:24:37 |
| como puedeo incrementa un campo auto numerico | simon | Conexión con bases de datos | 1 | 01-06-2004 20:55:12 |
|