spAddUpdate_ReceiptStack

Parameters

Parameter Parameter Type Mode Description
@PKID int IN
@StackID nvarchar(256) IN
@NextNumber int IN

Definition

Copy


            CREATE procedure [dbo].[spAddUpdate_ReceiptStack] (
                @PKID int,
                @StackID nvarchar(256),
                @NextNumber int
            ) as
                if (@PKID <= 0) begin
                    insert into dbo.ReceiptStack (
                        StackID,
                        NextNumber
                    ) values (
                        @StackID,
                        @NextNumber
                    )
                end else begin
                    declare @result int;
                    exec @result = sp_getapplock @Resource = 'Receipt Stack', @LockMode = 'Exclusive', @LockOwner = 'Session', @LockTimeout = 60000;
                    if @result in (0,1) begin -- Success
                        update dbo.ReceiptStack set
                            DateUpdated = getutcdate(),
                            StackID = @StackID,
                            NextNumber = @NextNumber
                        where ID = @PKID;
                    end
                    exec sp_releaseapplock @Resource = 'Receipt Stack', @LockOwner = 'Session';
                end
                return;