USP_DATAFORMTEMPLATE_EDIT_POSTAUCTIONPURCHASE

The save procedure used by the edit dataform template "Post Auction Purchase Edit Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@CONSTITUENTID uniqueidentifier IN Constituent
@PURCHASEAMOUNT money IN Purchase amount
@PURCHASEDATE date IN Purchase date

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_POSTAUCTIONPURCHASE (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @CONSTITUENTID uniqueidentifier,
                        @PURCHASEAMOUNT money,
                        @PURCHASEDATE date
                    )
                    as

                        set nocount on;

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

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                        begin try

                            if (@PURCHASEAMOUNT < 0
                                raiserror('BBERR_PURCHASEAMOUNT_NEGATIVE', 13, 1);

                            if exists(select 1 from dbo.AUCTIONITEMRESERVATION where AUCTIONITEMID = @ID)
                                update dbo.AUCTIONITEMRESERVATION
                                set
                                    PURCHASERID = @CONSTITUENTID,
                                    AUCTIONITEMID = @ID,
                                    PURCHASEAMOUNT = @PURCHASEAMOUNT,
                                    PURCHASEDATE = @PURCHASEDATE,
                                    CHANGEDBYID = @CHANGEAGENTID,
                                    DATECHANGED = @CURRENTDATE
                                where
                                    AUCTIONITEMRESERVATION.AUCTIONITEMID = @ID
                            else
                                insert into dbo.AUCTIONITEMRESERVATION
                                (
                                    ID,
                                    PURCHASERID,
                                    AUCTIONITEMID,
                                    PURCHASEAMOUNT,
                                    PURCHASEDATE,
                                    ADDEDBYID, 
                                    CHANGEDBYID, 
                                    DATEADDED, 
                                    DATECHANGED
                                )
                                values
                                (
                                    newid(),
                                    @CONSTITUENTID,
                                    @ID,
                                    @PURCHASEAMOUNT,
                                    @PURCHASEDATE,
                                    @CHANGEAGENTID
                                    @CHANGEAGENTID
                                    @CURRENTDATE
                                    @CURRENTDATE
                                )

                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                        end catch

                    return 0;