Ver Mensaje Individual
  #5  
Antiguo 25-07-2003
JamesCole JamesCole is offline
No confirmado
 
Registrado: jul 2003
Ubicación: Barcelona
Posts: 1
Reputación: 0
JamesCole Va por buen camino
Yo te sugiero lo tener la siguiente estructura :

una tabla de FACTURAS (por ejemplo) con los campos :

FACTURA INTEGER NOT NULL
NUMFACTURA INTEGER NOT NULL

Creas la clave primaria usando el fichero FACTURA
Define un UNIQUE para el Campo NUMFACTURA

Creas dos generadores uno cada para campo

El generador del campo FACTURA lo usas desde la aplicacion, para asignarle un valor.

Pero el generador para NUMFACTURA usalo en el Trigger de la tabla BEFOREINSERT y ahi le introduces el NUMFACTURA.

Y justamente es ahi donde podrias comprobar si hay huecos o asignarle un valor nuevo desde el generador. De esa manera te aseguras que no habra huecos entre registros y los huecos que habra solo sera a nivel del campo usado como clave primaria.

Yo en caso de mantenimentos de FACTURAS con cabecera y detalle lo que hago es generar el campo NUMFACTURA en el Trigger BEFOREUPDATE atraves de un campo de control (Booleano) para indicar cuando quiero que realmente me genere el numero de factura (NUMFACTURA).

De esta manera puedo grabar la cabecera para introducir lineas de detalle, sin problemas de FOREIGNKEY's y cuando finalmente el usuario da por hecha la factura (BOTON OK,je je ), justamente es ese momento cuando se genera el NUMFACTURA.

En un sistema multiusuario me asegura la continuidad de numeracion y no se perderan numeraciones si un usuario cancela (BOTON CANCEL, jeje) despues de haber tenido que grabar la cabecera y algunas lineas en el proceso de "añadir una factura nueva".


Vaya rollo solte!!!! jejejeje

No se hasta me ha parecido bonito asi tan bien explicado, espero que parezca bonito e interesante, sino puee naa!!

Espero que te sirva y saludos a todos !!!!!!
Responder Con Cita