USP_WORKSTATIONPRINTER_LOWERPRIORITY

Executes the "Workstation Printer Lower Priority Record Operation" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being updated.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the update.

Definition

Copy


                    CREATE procedure dbo.USP_WORKSTATIONPRINTER_LOWERPRIORITY
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier
                    )
                    as
                    begin
                        set nocount on;

                        if @CHANGEAGENTID is null
                            exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                        declare @SEQUENCEINCREASED integer
                        declare @WORKSTATIONID uniqueidentifier

                        select @SEQUENCEINCREASED = SEQUENCE + 1,
                        @WORKSTATIONID = WORKSTATIONID
                        from dbo.WORKSTATIONPRINTER
                        where ID = @ID

                        if exists
                        (
                            select 1
                            from dbo.WORKSTATIONPRINTER
                            where WORKSTATIONID = @WORKSTATIONID and @SEQUENCEINCREASED = SEQUENCE
                        )
                        begin
                            update
                                dbo.WORKSTATIONPRINTER
                            set
                                SEQUENCE = @SEQUENCEINCREASED -1,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where WORKSTATIONID = @WORKSTATIONID and SEQUENCE = @SEQUENCEINCREASED

                            update
                                dbo.WORKSTATIONPRINTER
                            set
                                SEQUENCE = @SEQUENCEINCREASED,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where ID = @ID
                        end

                        return 0;
                    end