Ver Mensaje Individual
  #4  
Antiguo 03-04-2007
lgarcia lgarcia is offline
Miembro
 
Registrado: jul 2004
Posts: 479
Reputación: 20
lgarcia Va por buen camino
Generacion automatica factura

Hola:

Otra variante puede ser porque imagino que pueden estar facturando varias personas a la vez, es que cuando el facturador entre en el formulario insertar un registro con los datos minimos tales como fecha, consecutivo, etc y cuando se guarde realizar un update con el resto de los datos del formulario con el id que debes haber obtenido cuando se hizo el insertar inicial. De esta forma garantizas reservar un consecutivo unico. Lo otro que tienes que hacer es para los casos en que no se termine de llenar el formulario por cualquier motivo es eliminar el registro y asi garantizas recuperar el consecutivo.

Este codigo en SQL lo resolvi de esta forma
Código:
CREATE PROCEDURE [insert_Bolsos]
 (@recepcionista_  [int],
  @fecha_   [datetime],
  @servicio_   [int],
  @ruta_   [int],
  @tipo_   [int],
  @id_   int Output,
  @consecutivo_  int Output)
AS 
SELECT @consecutivo_ = MAX(consecutivo) FROM dbo.Bolsos WHERE (fecha = CONVERT(DATETIME, @fecha_, 102))
IF @consecutivo_ is Null SET @consecutivo_ = 1
ELSE SET @consecutivo_ = @consecutivo_ + 1
  
INSERT INTO [Sala].[dbo].[Bolsos] 
  ([recepcionista],
  [fecha],
  [servicio],
  [ruta],
  [tipo],
  [consecutivo])
 
VALUES 
  (@recepcionista_,
  @fecha_,
  @servicio_,
  @ruta_,
  @tipo_,
  @consecutivo_)
SELECT @id_ = @@IDENTITY
GO
Saludos
Luis Garcia
Responder Con Cita