Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/01/2012, 10:39
Avatar de Ticosoft
Ticosoft
 
Fecha de Ingreso: agosto-2008
Mensajes: 29
Antigüedad: 15 años, 8 meses
Puntos: 1
Evitar registros duplicados

Saludos.

Escribo por la siguiente duda... Seré preciso.

. Un sistema de facturación en red (6 maquinas facturando todo el día sin parar)

. Dos Tablas..
. 1) Ventas
Campo NDOCUMENTO (VARCHAR(50)) como Campo Principal
. 2) DatosVentas
Campo NDOCUMENTO (VARCHAR(50)) como campo normal para relación en las búsquedas.

Que hago?

1. Antes de guardar el registro de la venta en la tabla Ventas, realizo un Query para saber el ultimo número ingresado y sumarle 1 al valor del campo obtenido. (x = x + 1)

2. Antes de guardar, ejecuto: Delete from Ventas where NDOCUMENTO = x (por si acaso, aunque en el fondo algo me dice que no debería)

2.1 Delete fromDatos Ventas where NDOCUMENTO = x

3. Después guardo en la tabla DatosVentas los artículos facturados donde NDOCUMENTO será el valor de x para futuras consultas.

¿Hago bien así? o hay un método mas pulcro.

He notado ciertos problemas, por ejemplo, en ocasiones, no todo el tiempo, no me aparecen registros en tabla DatosVentas, creo que es por usar Delete. Pero no se me ocurre otro método para evitar repetir un campo o que el sistema me arroje un mensaje de error diciendo que ese valor ya existe.

¿Hay otra forma de saber el proximo numero de factura para darselo a la variable x y registrarlo en ambas tablas?