USP_DATAFORMTEMPLATE_LOAD_AMPROIMPORTROW
The load procedure used by the edit dataform template "AuctionMaestro Pro Batch Row Edit Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@ORIGINATINGBATCHROWID | uniqueidentifier | INOUT | Originating batch ID |
@EVENTID | uniqueidentifier | INOUT | Event |
@SEQUENCE | int | INOUT | Sequence |
@ROWID | uniqueidentifier | INOUT | Row ID |
@RECORDTYPECODE | tinyint | INOUT | Record type |
@MESSAGES | xml | INOUT | |
@WASLOOKEDUP | bit | INOUT | Record was looked up at import time |
@AUTOMATCHSTATUS | nvarchar(max) | INOUT | Automatch status |
@MESSAGETEXT | nvarchar(max) | INOUT | Import messages |
@SUMMARY | nvarchar(max) | INOUT | Record summary |
@EVENT_NAME | nvarchar(100) | INOUT | Event name |
@EVENT_STARTDATE | datetime | INOUT | Event start date |
@CONSTITUENT_LINKID | uniqueidentifier | INOUT | Linked Constituent |
@CONSTITUENT_MAPPINGID | int | INOUT | Constituent mapping id |
@CONSTITUENT_UPDATEDTITLE | nvarchar(100) | INOUT | Title |
@CONSTITUENT_UPDATEDFIRSTNAME | nvarchar(50) | INOUT | First name |
@CONSTITUENT_UPDATEDKEYNAME | nvarchar(100) | INOUT | Last name |
@CONSTITUENT_UPDATEDADDRESSBLOCK | nvarchar(150) | INOUT | Address block |
@CONSTITUENT_UPDATEDCITY | nvarchar(50) | INOUT | City |
@CONSTITUENT_UPDATEDPOSTCODE | nvarchar(12) | INOUT | Post code |
@CONSTITUENT_UPDATEDSTATEID | uniqueidentifier | INOUT | State |
@CONSTITUENT_UPDATEDCOUNTRYID | uniqueidentifier | INOUT | Country |
@CONSTITUENT_UPDATEDPHONE | nvarchar(100) | INOUT | Phone |
@CONSTITUENT_UPDATEDEMAILADDRESS | nvarchar(100) | INOUT | Email address |
@CONSTITUENT_ISINDIVIDUAL | bit | INOUT | Constituent is an individual |
@CONSTITUENT_LOOKUPID | nvarchar(255) | INOUT | Constituent lookup id |
@CONSTITUENT_AUTOMATCHSTATUSCODE | tinyint | INOUT | Constituent automatch status |
@CONSTITUENT_UPDATECONTACTINFO | bit | INOUT | |
@CONSTITUENT_NEWSECURITYATTRIBUTEID | uniqueidentifier | INOUT | Constituent security attribute |
@CONSTITUENT_NEWSITEID | uniqueidentifier | INOUT | Constituent site |
@REGISTRANT_CONSTITUENTID | uniqueidentifier | INOUT | Registrant constituent ID |
@REGISTRANT_EVENTPRICEID | uniqueidentifier | INOUT | Registration event price ID |
@REGISTRANT_AMOUNT | money | INOUT | Registration amount |
@AUCTIONITEM_LINKID | uniqueidentifier | INOUT | Linked auction item |
@AUCTIONITEM_MAPPINGID | int | INOUT | Auction item mapping id |
@AUCTIONITEM_UPDATEDNAME | nvarchar(100) | INOUT | Name |
@AUCTIONITEM_UPDATEDDESCRIPTION | nvarchar(255) | INOUT | Description |
@AUCTIONITEM_UPDATEDEXPIRATIONDATE | datetime | INOUT | Expiration date |
@AUCTIONITEM_UPDATEDDONATIONDATE | datetime | INOUT | Donation date |
@AUCTIONITEM_UPDATEDCATEGORY | nvarchar(100) | INOUT | Category |
@AUCTIONITEM_UPDATEDSUBCATEGORY | nvarchar(100) | INOUT | Subcategory |
@AUCTIONITEM_UPDATEDMINIMUMBID | money | INOUT | Minimum bid |
@AUCTIONITEM_UPDATEDVALUE | money | INOUT | Value |
@AUCTIONITEM_CONSTITUENTID | uniqueidentifier | INOUT | Donor |
@AUCTIONITEM_ADJUSTMENTDATE | datetime | INOUT | Adjustment date |
@AUCTIONITEM_ADJUSTMENTPOSTDATE | datetime | INOUT | Adjustment post date |
@AUCTIONITEM_ADJUSTMENTREASONCODEID | uniqueidentifier | INOUT | Adjustment reason |
@AUCTIONITEM_ADJUSTMENTREASON | nvarchar(300) | INOUT | Adjustment description |
@PURCHASE_CONSTITUENTID | uniqueidentifier | INOUT | Purchase constituent |
@PURCHASE_BIDDERNUMBER | nvarchar(10) | INOUT | Purchase bidder number |
@PURCHASE_DATE | datetime | INOUT | Purchase date |
@PURCHASE_AMOUNT | money | INOUT | Purchase amount |
@PURCHASE_POSTDATE | datetime | INOUT | Purchase post date |
@PURCHASE_POSTSTATUSCODE | tinyint | INOUT | Purchase post status |
@PURCHASE_PAYMENTMETHODCODE | tinyint | INOUT | Purchase payment method |
@PURCHASE_CREDITTYPECODEID | uniqueidentifier | INOUT | Purchase credit card type |
@PURCHASE_DETAIL | xml | INOUT | Purchase detail |
@PACKAGE_LINKID | uniqueidentifier | INOUT | Linked package |
@PACKAGE_MAPPINGID | int | INOUT | Package mapping id |
@PACKAGE_NAME | nvarchar(100) | INOUT | Name |
@PACKAGE_DESCRIPTION | nvarchar(100) | INOUT | Description |
@PACKAGE_EXPIRATIONDATE | datetime | INOUT | Expiration date |
@PACKAGE_CATEGORY | nvarchar(100) | INOUT | Category |
@PACKAGE_SUBCATEGORY | nvarchar(100) | INOUT | Subcategory |
@PACKAGE_MINIMUMBID | money | INOUT | Minimum bid |
@EVENTBASECURRENCYID | uniqueidentifier | INOUT | Event base currency |
@TRANSACTIONTYPE | nvarchar(max) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_LOAD_AMPROIMPORTROW
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@ORIGINATINGBATCHROWID uniqueidentifier = null output,
@EVENTID uniqueidentifier = null output,
@SEQUENCE int = null output,
@ROWID uniqueidentifier = null output,
@RECORDTYPECODE tinyint = null output,
@MESSAGES xml = null output,
@WASLOOKEDUP bit = null output,
@AUTOMATCHSTATUS nvarchar(max) = null output,
@MESSAGETEXT nvarchar(max) = null output,
@SUMMARY nvarchar(max) = null output,
--Event fields
@EVENT_NAME nvarchar(100) = null output,
@EVENT_STARTDATE datetime = null output,
--Constituent Fields
@CONSTITUENT_LINKID uniqueidentifier = null output,
@CONSTITUENT_MAPPINGID int = null output,
@CONSTITUENT_UPDATEDTITLE nvarchar(100) = null output,
@CONSTITUENT_UPDATEDFIRSTNAME nvarchar(50) = null output,
@CONSTITUENT_UPDATEDKEYNAME nvarchar(100) = null output,
@CONSTITUENT_UPDATEDADDRESSBLOCK nvarchar(150) = null output,
@CONSTITUENT_UPDATEDCITY nvarchar(50) = null output,
@CONSTITUENT_UPDATEDPOSTCODE nvarchar(12) = null output,
@CONSTITUENT_UPDATEDSTATEID uniqueidentifier = null output,
@CONSTITUENT_UPDATEDCOUNTRYID uniqueidentifier = null output,
@CONSTITUENT_UPDATEDPHONE nvarchar(100) = null output,
@CONSTITUENT_UPDATEDEMAILADDRESS nvarchar(100) = null output,
@CONSTITUENT_ISINDIVIDUAL bit = null output,
@CONSTITUENT_LOOKUPID nvarchar(255) = null output,
@CONSTITUENT_AUTOMATCHSTATUSCODE tinyint = null output,
@CONSTITUENT_UPDATECONTACTINFO bit = null output,
@CONSTITUENT_NEWSECURITYATTRIBUTEID uniqueidentifier = null output,
@CONSTITUENT_NEWSITEID uniqueidentifier = null output,
--Registrant Fields,
@REGISTRANT_CONSTITUENTID uniqueidentifier = null output,
@REGISTRANT_EVENTPRICEID uniqueidentifier = null output,
@REGISTRANT_AMOUNT money = null output,
--AuctionItem Fields
@AUCTIONITEM_LINKID uniqueidentifier = null output,
@AUCTIONITEM_MAPPINGID int = null output,
@AUCTIONITEM_UPDATEDNAME nvarchar(100) = null output,
@AUCTIONITEM_UPDATEDDESCRIPTION nvarchar(255) = null output,
@AUCTIONITEM_UPDATEDEXPIRATIONDATE datetime = null output,
@AUCTIONITEM_UPDATEDDONATIONDATE datetime = null output,
@AUCTIONITEM_UPDATEDCATEGORY nvarchar(100) = null output,
@AUCTIONITEM_UPDATEDSUBCATEGORY nvarchar(100) = null output,
@AUCTIONITEM_UPDATEDMINIMUMBID money = null output,
@AUCTIONITEM_UPDATEDVALUE money = null output,
@AUCTIONITEM_CONSTITUENTID uniqueidentifier = null output,
@AUCTIONITEM_ADJUSTMENTDATE datetime = null output,
@AUCTIONITEM_ADJUSTMENTPOSTDATE datetime = null output,
@AUCTIONITEM_ADJUSTMENTREASONCODEID uniqueidentifier = null output,
@AUCTIONITEM_ADJUSTMENTREASON nvarchar(300) = null output,
--Purchase Fields
@PURCHASE_CONSTITUENTID uniqueidentifier = null output,
@PURCHASE_BIDDERNUMBER nvarchar(10) = null output,
@PURCHASE_DATE datetime = null output,
@PURCHASE_AMOUNT money = null output,
@PURCHASE_POSTDATE datetime = null output,
@PURCHASE_POSTSTATUSCODE tinyint = null output,
@PURCHASE_PAYMENTMETHODCODE tinyint = null output,
@PURCHASE_CREDITTYPECODEID uniqueidentifier = null output,
@PURCHASE_DETAIL xml = null output,
--Package Fields
@PACKAGE_LINKID uniqueidentifier = null output,
@PACKAGE_MAPPINGID int = null output,
@PACKAGE_NAME nvarchar(100) = null output,
@PACKAGE_DESCRIPTION nvarchar(100) = null output,
@PACKAGE_EXPIRATIONDATE datetime = null output,
@PACKAGE_CATEGORY nvarchar(100) = null output,
@PACKAGE_SUBCATEGORY nvarchar(100) = null output,
@PACKAGE_MINIMUMBID money = null output,
@EVENTBASECURRENCYID uniqueidentifier = null output,
@TRANSACTIONTYPE nvarchar(max) = null output
)
as
set nocount on;
set @DATALOADED = 0;
declare @BATCHID uniqueidentifier = null;
declare @ISEXCEPTIONBATCH bit = 0;
declare @REALORIGINATINGBATCHROWID uniqueidentifier;
select
@ROWID = @ID,
@ORIGINATINGBATCHROWID = @ID, --Use our own batch ID here, so when an exception batch gets created, it gets created with its parent
@SEQUENCE = BATCHAMPROIMPORT.SEQUENCE,
@RECORDTYPECODE = BATCHAMPROIMPORT.RECORDTYPECODE,
@WASLOOKEDUP = BATCHAMPROIMPORT.WASLOOKEDUP,
@BATCHID = BATCH.ID,
@ISEXCEPTIONBATCH = case when BATCH.ORIGINATINGBATCHID is null then 0 else 1 end,
@REALORIGINATINGBATCHROWID = ORIGINATINGBATCHROWID
from dbo.BATCHAMPROIMPORT
inner join dbo.BATCH on BATCH.ID = BATCHAMPROIMPORT.BATCHID
where BATCHAMPROIMPORT.ID = @ID
and BATCHAMPROIMPORT.RECORDTYPECODE <> 255;
declare @REALBATCHID uniqueidentifier = @BATCHID;
while @ISEXCEPTIONBATCH = 1
begin
set @ISEXCEPTIONBATCH = 0;
set @REALBATCHID = @BATCHID;
select
@ISEXCEPTIONBATCH = 1,
@BATCHID = BATCH.ORIGINATINGBATCHID
from dbo.BATCH where BATCH.ID = @BATCHID and ORIGINATINGBATCHID is not null;
end
select top 1
@EVENTID = BATCHAMPRODATA.EVENTAUCTIONID,
@EVENTBASECURRENCYID = EVENT.BASECURRENCYID
from dbo.BATCHAMPRODATA
left join dbo.EVENT on EVENT.ID = BATCHAMPRODATA.EVENTAUCTIONID
where BATCHAMPRODATA.ID = @REALBATCHID;
select @MESSAGES =
(
select ID, SEQUENCE, MESSAGETYPECODE, MESSAGE
from dbo.BATCHAMPROIMPORTMESSAGE
where AMPROIMPORTID = @ID
for xml raw('ITEM'),type,elements,root('MESSAGES'),binary base64
)
if @RECORDTYPECODE = 1
begin
--Event
select
@DATALOADED = 1,
@EVENT_NAME = EVENT_NAME,
@EVENT_STARTDATE = EVENT_STARTDATE
from dbo.BATCHAMPROIMPORTEVENT
where ID = @ID;
end
else if @RECORDTYPECODE = 2
begin
--Constituent
select
@DATALOADED = 1,
@CONSTITUENT_LINKID = CONSTITUENT_LINKID,
@CONSTITUENT_MAPPINGID = CONSTITUENT_MAPPINGID,
@CONSTITUENT_UPDATEDTITLE = CONSTITUENT_UPDATEDTITLE,
@CONSTITUENT_UPDATEDFIRSTNAME = CONSTITUENT_UPDATEDFIRSTNAME,
@CONSTITUENT_UPDATEDKEYNAME = CONSTITUENT_UPDATEDKEYNAME,
@CONSTITUENT_UPDATEDADDRESSBLOCK = CONSTITUENT_UPDATEDADDRESSBLOCK,
@CONSTITUENT_UPDATEDCITY = CONSTITUENT_UPDATEDCITY,
@CONSTITUENT_UPDATEDPOSTCODE = CONSTITUENT_UPDATEDPOSTCODE,
@CONSTITUENT_UPDATEDSTATEID = CONSTITUENT_UPDATEDSTATEID,
@CONSTITUENT_UPDATEDCOUNTRYID = CONSTITUENT_UPDATEDCOUNTRYID,
@CONSTITUENT_UPDATEDPHONE = CONSTITUENT_UPDATEDPHONE,
@CONSTITUENT_UPDATEDEMAILADDRESS = CONSTITUENT_UPDATEDEMAILADDRESS,
@CONSTITUENT_ISINDIVIDUAL = CONSTITUENT_ISINDIVIDUAL,
@CONSTITUENT_LOOKUPID = CONSTITUENT_LOOKUPID,
@CONSTITUENT_AUTOMATCHSTATUSCODE = CONSTITUENT_AUTOMATCHSTATUSCODE,
@CONSTITUENT_UPDATECONTACTINFO = CONSTITUENT_UPDATECONTACTINFO,
@CONSTITUENT_NEWSECURITYATTRIBUTEID = CONSTITUENT_NEWSECURITYATTRIBUTEID,
@CONSTITUENT_NEWSITEID = CONSTITUENT_NEWSITEID
from dbo.BATCHAMPROIMPORTCONSTITUENT
where ID = @ID;
end
else if @RECORDTYPECODE = 3
begin
--Registrant
select
@DATALOADED = 1,
@REGISTRANT_CONSTITUENTID = REGISTRANT_CONSTITUENTID,
@REGISTRANT_EVENTPRICEID = REGISTRANT_EVENTPRICEID,
@REGISTRANT_AMOUNT= REGISTRANT_AMOUNT
from dbo.BATCHAMPROIMPORTREGISTRANT
where ID = @ID;
end
else if @RECORDTYPECODE = 4
begin
--Auction Item
select
@DATALOADED = 1,
@AUCTIONITEM_LINKID = AUCTIONITEM_LINKID,
@AUCTIONITEM_MAPPINGID = AUCTIONITEM_MAPPINGID,
@AUCTIONITEM_UPDATEDNAME = AUCTIONITEM_UPDATEDNAME,
@AUCTIONITEM_UPDATEDDESCRIPTION = AUCTIONITEM_UPDATEDDESCRIPTION,
@AUCTIONITEM_UPDATEDEXPIRATIONDATE = AUCTIONITEM_UPDATEDEXPIRATIONDATE,
@AUCTIONITEM_UPDATEDDONATIONDATE = AUCTIONITEM_UPDATEDDONATIONDATE,
@AUCTIONITEM_UPDATEDCATEGORY = AUCTIONITEM_UPDATEDCATEGORY,
@AUCTIONITEM_UPDATEDSUBCATEGORY = AUCTIONITEM_UPDATEDSUBCATEGORY,
@AUCTIONITEM_UPDATEDMINIMUMBID = AUCTIONITEM_UPDATEDMINIMUMBID,
@AUCTIONITEM_UPDATEDVALUE = AUCTIONITEM_UPDATEDVALUE,
@AUCTIONITEM_CONSTITUENTID = AUCTIONITEM_CONSTITUENTID,
@AUCTIONITEM_ADJUSTMENTDATE = AUCTIONITEM_ADJUSTMENTDATE,
@AUCTIONITEM_ADJUSTMENTPOSTDATE = AUCTIONITEM_ADJUSTMENTPOSTDATE,
@AUCTIONITEM_ADJUSTMENTREASONCODEID = AUCTIONITEM_ADJUSTMENTREASONCODEID,
@AUCTIONITEM_ADJUSTMENTREASON = AUCTIONITEM_ADJUSTMENTREASON
from dbo.BATCHAMPROIMPORTITEM
where ID = @ID;
end
else if @RECORDTYPECODE = 5
begin
--Purchase
select
@DATALOADED = 1,
@PURCHASE_CONSTITUENTID = PURCHASE_CONSTITUENTID,
@PURCHASE_BIDDERNUMBER = PURCHASE_BIDDERNUMBER,
@PURCHASE_AMOUNT = PURCHASE_AMOUNT,
@PURCHASE_DATE = PURCHASE_DATE,
@PURCHASE_POSTDATE = PURCHASE_POSTDATE,
@PURCHASE_POSTSTATUSCODE = PURCHASE_POSTSTATUSCODE,
@PURCHASE_PAYMENTMETHODCODE = PURCHASE_PAYMENTMETHODCODE,
@PURCHASE_CREDITTYPECODEID = PURCHASE_CREDITTYPECODEID
from dbo.BATCHAMPROIMPORTPURCHASE
where ID = @ID;
select @PURCHASE_DETAIL =
(
select ID, PURCHASEDETAIL_ITEMID, PURCHASEDETAIL_AMOUNT, PURCHASE_REGISTRANTID as [PURCHASEDETAIL_REGISTRANTID],
PURCHASEDETAIL_TRANSACTIONTYPECODE, PURCHASEDETAIL_DESIGNATIONID, @EVENTBASECURRENCYID as [PURCHASEDETAIL_CURRENCYID]
from dbo.BATCHAMPROIMPORTPURCHASEDETAIL
where PURCHASEDETAIL_PURCHASEID = @ID
for xml raw('ITEM'),type,elements,root('PURCHASE_DETAIL'),binary base64
)
end
else if @RECORDTYPECODE = 6
begin
--Package
select
@DATALOADED = 1,
@PACKAGE_LINKID = PACKAGE_LINKID,
@PACKAGE_MAPPINGID = PACKAGE_MAPPINGID,
@PACKAGE_NAME = PACKAGE_NAME,
@PACKAGE_DESCRIPTION = PACKAGE_DESCRIPTION,
@PACKAGE_EXPIRATIONDATE = PACKAGE_EXPIRATIONDATE,
@PACKAGE_CATEGORY = PACKAGE_CATEGORY,
@PACKAGE_SUBCATEGORY = PACKAGE_SUBCATEGORY,
@PACKAGE_MINIMUMBID = PACKAGE_MINIMUMBID
from dbo.BATCHAMPROIMPORTPACKAGE
where ID = @ID;
end
else if @RECORDTYPECODE = 254
begin
--Error
set @DATALOADED = 1;
end
--WI 102207 This is a weird batch because rows can refer to other rows in the batch. A purchase could be from
--a constituent is going to be created in a previous row. When an exception batch gets created, the purchasing
--constituent will still refer to a row in the committed batch and not the new exception batch. Using the
--ORIGINATINGBATCHROWID, we can fix these IDs. Putting it here so when the exception batch gets loaded, it will
--get loaded with the updated IDs. Should the row be saved later, the IDs will be updated. The SP is smart enough to
--not update IDs which are already correct.
exec dbo.USP_AMPROIMPORT_FIXIDS @ID, @REALORIGINATINGBATCHROWID,
@CONSTITUENT_LINKID output, @REGISTRANT_CONSTITUENTID output, @AUCTIONITEM_LINKID output,
@AUCTIONITEM_CONSTITUENTID output, @PURCHASE_CONSTITUENTID output, @PURCHASE_DETAIL output,
@PACKAGE_LINKID output