USP_DATAFORMTEMPLATE_ADD_AUCTIONITEMADDTOAUCTION
The save procedure used by the add dataform template "Auction Item Add To Auction Add Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@EVENTAUCTIONID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@AUCTIONITEMID | uniqueidentifier | IN | Item |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_AUCTIONITEMADDTOAUCTION
(
@ID uniqueidentifier = null output, -- unused
@EVENTAUCTIONID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@AUCTIONITEMID uniqueidentifier = null
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
if exists(select 1 from dbo.AUCTIONITEM where AUCTIONITEM.ID = @AUCTIONITEMID and AUCTIONITEM.EVENTAUCTIONID is not null and AUCTIONITEM.EVENTAUCTIONID <> @EVENTAUCTIONID)
raiserror('Items cannot be removed from another auction.', 13, 1)
begin try
if @EVENTAUCTIONID is not null and exists(select 1 from dbo.EVENT where EVENT.ID = @EVENTAUCTIONID and EVENT.ISACTIVE = 0)
raiserror('BBERR_EVENTAUCTIONISINACTIVE',13,1);
if not exists
(
select EVENT.BASECURRENCYID
from dbo.EVENT
inner join dbo.AUCTIONITEM on AUCTIONITEM.TRANSACTIONCURRENCYID = EVENT.BASECURRENCYID
where EVENT.ID = @EVENTAUCTIONID and AUCTIONITEM.ID = @AUCTIONITEMID
)
raiserror('BBERR_AUCTIONITEM_EVENT_BASECURRENCY', 13, 1);
update dbo.AUCTIONITEM
set
EVENTAUCTIONID = @EVENTAUCTIONID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
AUCTIONITEM.ID = @AUCTIONITEMID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0