
ayuda con foliador isaias
Publicado por apis (26 intervenciones) el 10/03/2009 19:25:42
Hi! en un post anterior para evitar duplicados y bloqueos para un folio pusiste este codigo
-- Store que sirve como FOLIADOR
CREATE PROCEDURE sPS_ObtieneFolioHost
@iOrigen tinyint = 0,
@iFolioHost int = 0 OUTPUT
AS
BEGIN
SET NOCOUNT ON
BEGIN TRAN MyTran
UPDATE FOLIADOR WITH (ROWLOCK)
SET FOLIO = ISNULL(FOLIO, 0) + 1
SELECT @iFolioHost = FOLIO FROM FOLIADOR ROWLOCK
COMMIT TRAN MyTran
IF @iOrigen = 1
SELECT @iFolioHost
END
tengo una duda, mandas llamar a este stored procedure desde por ejemplo otro stored procedure para insertar por ejemplo una venta haces otra transaccion para insertar en la venta tienes algo asi
CREATE PROCEDURE pa_ventas
as
begin
begin tran
declare @folio int
exec sPS_ObtieneFolioHost 1,@folio int OUTPUT
INSERT INTO VENTAS VALUES (@folio , .....)
commit tran
end
-- Store que sirve como FOLIADOR
CREATE PROCEDURE sPS_ObtieneFolioHost
@iOrigen tinyint = 0,
@iFolioHost int = 0 OUTPUT
AS
BEGIN
SET NOCOUNT ON
BEGIN TRAN MyTran
UPDATE FOLIADOR WITH (ROWLOCK)
SET FOLIO = ISNULL(FOLIO, 0) + 1
SELECT @iFolioHost = FOLIO FROM FOLIADOR ROWLOCK
COMMIT TRAN MyTran
IF @iOrigen = 1
SELECT @iFolioHost
END
tengo una duda, mandas llamar a este stored procedure desde por ejemplo otro stored procedure para insertar por ejemplo una venta haces otra transaccion para insertar en la venta tienes algo asi
CREATE PROCEDURE pa_ventas
as
begin
begin tran
declare @folio int
exec sPS_ObtieneFolioHost 1,@folio int OUTPUT
INSERT INTO VENTAS VALUES (@folio , .....)
commit tran
end
Valora esta pregunta


0