USP_AUCTIONITEM_ADDTOPACKAGE
Executes the "Auction Item Add to Package Record Operation" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(73) | 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_AUCTIONITEM_ADDTOPACKAGE
(
@ID nvarchar(73),
@CHANGEAGENTID uniqueidentifier
)
as begin
declare @ITEMID uniqueidentifier = null;
declare @PACKAGEID uniqueidentifier = null;
select @ITEMID = cast(substring(@ID, 0, 37) as uniqueidentifier)
select @PACKAGEID = cast(substring(@ID, 38, 36) as uniqueidentifier)
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
if not exists
(
select EVENT.BASECURRENCYID
from dbo.AUCTIONITEM [PACKAGE]
inner join dbo.EVENT on EVENT.ID = [PACKAGE].EVENTAUCTIONID
inner join dbo.AUCTIONITEM on AUCTIONITEM.TRANSACTIONCURRENCYID = EVENT.BASECURRENCYID
where AUCTIONITEM.ID = @ITEMID
and [PACKAGE].ID = @PACKAGEID
)
raiserror('BBERR_AUCTIONITEM_EVENT_BASECURRENCY', 13, 1);
declare @ITEMACCOUNTSYSTEMID uniqueidentifier;
select
@ITEMACCOUNTSYSTEMID = PDACCOUNTSYSTEMFORREVENUE.PDACCOUNTSYSTEMID
from
dbo.AUCTIONITEM
inner join dbo.PDACCOUNTSYSTEMFORREVENUE on AUCTIONITEM.REVENUEAUCTIONDONATIONID = PDACCOUNTSYSTEMFORREVENUE.ID
where
AUCTIONITEM.ID = @ITEMID
declare @PACKAGEACCOUNTSYSTEMID uniqueidentifier;
select top 1
@PACKAGEACCOUNTSYSTEMID = PDACCOUNTSYSTEMFORREVENUE.PDACCOUNTSYSTEMID
from
dbo.AUCTIONITEM
inner join dbo.PDACCOUNTSYSTEMFORREVENUE on AUCTIONITEM.REVENUEAUCTIONDONATIONID = PDACCOUNTSYSTEMFORREVENUE.ID
where
AUCTIONITEM.PACKAGEID = @PACKAGEID
if (@PACKAGEACCOUNTSYSTEMID is not null) and (@ITEMACCOUNTSYSTEMID <> @PACKAGEACCOUNTSYSTEMID)
raiserror('BBERR_AUCTIONITEM_INVALIDPDACCOUNTSYSTEM_FORPACKAGE', 13, 1);
update dbo.AUCTIONITEM
set
PACKAGEID = @PACKAGEID,
EVENTAUCTIONID = (select EVENTAUCTIONID from dbo.AUCTIONITEM where ID = @PACKAGEID),
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ITEMID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1;
end catch
return 0;
end