USP_DATAFORMTEMPLATE_EDIT_AMPROIMPORTROW

The save 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 indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@ORIGINATINGBATCHROWID uniqueidentifier IN Originating batch ID
@EVENTID uniqueidentifier IN Event
@SEQUENCE int IN Sequence
@ROWID uniqueidentifier IN Row ID
@RECORDTYPECODE tinyint IN Record type
@MESSAGES xml IN
@WASLOOKEDUP bit IN Record was looked up at import time
@EVENT_NAME nvarchar(100) IN Event name
@EVENT_STARTDATE datetime IN Event start date
@CONSTITUENT_LINKID uniqueidentifier IN Linked Constituent
@CONSTITUENT_MAPPINGID int IN Constituent mapping id
@CONSTITUENT_UPDATEDTITLE nvarchar(100) IN Title
@CONSTITUENT_UPDATEDFIRSTNAME nvarchar(50) IN First name
@CONSTITUENT_UPDATEDKEYNAME nvarchar(100) IN Last name
@CONSTITUENT_UPDATEDADDRESSBLOCK nvarchar(150) IN Address block
@CONSTITUENT_UPDATEDCITY nvarchar(50) IN City
@CONSTITUENT_UPDATEDPOSTCODE nvarchar(12) IN Post code
@CONSTITUENT_UPDATEDSTATEID uniqueidentifier IN State
@CONSTITUENT_UPDATEDCOUNTRYID uniqueidentifier IN Country
@CONSTITUENT_UPDATEDPHONE nvarchar(100) IN Phone
@CONSTITUENT_UPDATEDEMAILADDRESS nvarchar(100) IN Email address
@CONSTITUENT_ISINDIVIDUAL bit IN Constituent is an individual
@CONSTITUENT_LOOKUPID nvarchar(255) IN Constituent lookup id
@CONSTITUENT_AUTOMATCHSTATUSCODE tinyint IN Constituent automatch status
@CONSTITUENT_UPDATECONTACTINFO bit IN
@CONSTITUENT_NEWSECURITYATTRIBUTEID uniqueidentifier IN Constituent security attribute
@CONSTITUENT_NEWSITEID uniqueidentifier IN Constituent site
@REGISTRANT_CONSTITUENTID uniqueidentifier IN Registrant constituent ID
@REGISTRANT_EVENTPRICEID uniqueidentifier IN Registration event price ID
@REGISTRANT_AMOUNT money IN Registration amount
@AUCTIONITEM_LINKID uniqueidentifier IN Linked auction item
@AUCTIONITEM_MAPPINGID int IN Auction item mapping id
@AUCTIONITEM_UPDATEDNAME nvarchar(100) IN Name
@AUCTIONITEM_UPDATEDDESCRIPTION nvarchar(255) IN Description
@AUCTIONITEM_UPDATEDEXPIRATIONDATE datetime IN Expiration date
@AUCTIONITEM_UPDATEDDONATIONDATE datetime IN Donation date
@AUCTIONITEM_UPDATEDCATEGORY nvarchar(100) IN Category
@AUCTIONITEM_UPDATEDSUBCATEGORY nvarchar(100) IN Subcategory
@AUCTIONITEM_UPDATEDMINIMUMBID money IN Minimum bid
@AUCTIONITEM_UPDATEDVALUE money IN Value
@AUCTIONITEM_CONSTITUENTID uniqueidentifier IN Donor
@AUCTIONITEM_ADJUSTMENTDATE datetime IN Adjustment date
@AUCTIONITEM_ADJUSTMENTPOSTDATE datetime IN Adjustment post date
@AUCTIONITEM_ADJUSTMENTREASONCODEID uniqueidentifier IN Adjustment reason
@AUCTIONITEM_ADJUSTMENTREASON nvarchar(300) IN Adjustment description
@PURCHASE_CONSTITUENTID uniqueidentifier IN Purchase constituent
@PURCHASE_BIDDERNUMBER nvarchar(10) IN Purchase bidder number
@PURCHASE_AMOUNT money IN Purchase amount
@PURCHASE_DATE datetime IN Purchase date
@PURCHASE_POSTDATE datetime IN Purchase post date
@PURCHASE_POSTSTATUSCODE tinyint IN Purchase post status
@PURCHASE_PAYMENTMETHODCODE tinyint IN Purchase payment method
@PURCHASE_CREDITTYPECODEID uniqueidentifier IN Purchase credit card type
@PURCHASE_DETAIL xml IN Purchase detail
@PACKAGE_LINKID uniqueidentifier IN Linked package
@PACKAGE_MAPPINGID int IN Package mapping id
@PACKAGE_NAME nvarchar(100) IN Name
@PACKAGE_DESCRIPTION nvarchar(100) IN Description
@PACKAGE_EXPIRATIONDATE datetime IN Expiration date
@PACKAGE_CATEGORY nvarchar(100) IN Category
@PACKAGE_SUBCATEGORY nvarchar(100) IN Subcategory
@PACKAGE_MINIMUMBID money IN Minimum bid

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_AMPROIMPORTROW
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier,
                        @ORIGINATINGBATCHROWID uniqueidentifier,
                        @EVENTID uniqueidentifier,
                        @SEQUENCE int,
                        @ROWID uniqueidentifier,

                        @RECORDTYPECODE tinyint,
                        @MESSAGES xml,
                        @WASLOOKEDUP bit

                        --Event fields
                        @EVENT_NAME nvarchar(100),
                        @EVENT_STARTDATE datetime,

                        --Constituent Fields
                        @CONSTITUENT_LINKID uniqueidentifier,
                        @CONSTITUENT_MAPPINGID int
                        @CONSTITUENT_UPDATEDTITLE nvarchar(100),
                        @CONSTITUENT_UPDATEDFIRSTNAME nvarchar(50),
                        @CONSTITUENT_UPDATEDKEYNAME nvarchar(100),
                        @CONSTITUENT_UPDATEDADDRESSBLOCK nvarchar(150),
                        @CONSTITUENT_UPDATEDCITY nvarchar(50),
                        @CONSTITUENT_UPDATEDPOSTCODE nvarchar(12),
                        @CONSTITUENT_UPDATEDSTATEID uniqueidentifier,
                        @CONSTITUENT_UPDATEDCOUNTRYID uniqueidentifier,
                        @CONSTITUENT_UPDATEDPHONE nvarchar(100),
                        @CONSTITUENT_UPDATEDEMAILADDRESS nvarchar(100),
                        @CONSTITUENT_ISINDIVIDUAL bit,
                        @CONSTITUENT_LOOKUPID nvarchar(255),
                        @CONSTITUENT_AUTOMATCHSTATUSCODE tinyint
                        @CONSTITUENT_UPDATECONTACTINFO bit,
                        @CONSTITUENT_NEWSECURITYATTRIBUTEID uniqueidentifier,
                        @CONSTITUENT_NEWSITEID uniqueidentifier,

                        --Registrant Fields,
                        @REGISTRANT_CONSTITUENTID uniqueidentifier,
                        @REGISTRANT_EVENTPRICEID uniqueidentifier,
                        @REGISTRANT_AMOUNT money,

                        --AuctionItem Fields
                        @AUCTIONITEM_LINKID uniqueidentifier,
                        @AUCTIONITEM_MAPPINGID int,
                        @AUCTIONITEM_UPDATEDNAME nvarchar(100),
                        @AUCTIONITEM_UPDATEDDESCRIPTION nvarchar(255),
                        @AUCTIONITEM_UPDATEDEXPIRATIONDATE datetime,
                        @AUCTIONITEM_UPDATEDDONATIONDATE datetime,
                        @AUCTIONITEM_UPDATEDCATEGORY nvarchar(100),
                        @AUCTIONITEM_UPDATEDSUBCATEGORY nvarchar(100),
                        @AUCTIONITEM_UPDATEDMINIMUMBID money,
                        @AUCTIONITEM_UPDATEDVALUE money,
                        @AUCTIONITEM_CONSTITUENTID uniqueidentifier,
                        @AUCTIONITEM_ADJUSTMENTDATE datetime,
                        @AUCTIONITEM_ADJUSTMENTPOSTDATE datetime,
                        @AUCTIONITEM_ADJUSTMENTREASONCODEID uniqueidentifier,
                        @AUCTIONITEM_ADJUSTMENTREASON nvarchar(300),

                        --Purchase Fields
                        @PURCHASE_CONSTITUENTID uniqueidentifier,
                        @PURCHASE_BIDDERNUMBER nvarchar(10),
                        @PURCHASE_AMOUNT money,
                        @PURCHASE_DATE datetime,
                        @PURCHASE_POSTDATE datetime,
                        @PURCHASE_POSTSTATUSCODE tinyint,
                        @PURCHASE_PAYMENTMETHODCODE tinyint,
                        @PURCHASE_CREDITTYPECODEID uniqueidentifier,
                        @PURCHASE_DETAIL xml,

                        --Package Fields
                        @PACKAGE_LINKID uniqueidentifier,
                        @PACKAGE_MAPPINGID int,
                        @PACKAGE_NAME nvarchar(100),
                        @PACKAGE_DESCRIPTION nvarchar(100),
                        @PACKAGE_EXPIRATIONDATE datetime,
                        @PACKAGE_CATEGORY nvarchar(100),
                        @PACKAGE_SUBCATEGORY nvarchar(100),
                        @PACKAGE_MINIMUMBID money
                    )
                    as
                    set nocount on;

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

                        declare @CHANGEDATE datetime = getdate();

                        if @EVENT_NAME is null
                            set @EVENT_NAME = N'';

                        if @CONSTITUENT_UPDATEDTITLE is null
                            set @CONSTITUENT_UPDATEDTITLE = N'';

                        if @CONSTITUENT_UPDATEDFIRSTNAME is null
                            set @CONSTITUENT_UPDATEDFIRSTNAME = N'';

                        if @CONSTITUENT_UPDATEDKEYNAME is null
                            set @CONSTITUENT_UPDATEDKEYNAME = N'';

                        if @CONSTITUENT_UPDATEDADDRESSBLOCK is null
                            set @CONSTITUENT_UPDATEDADDRESSBLOCK = N'';

                        if @CONSTITUENT_UPDATEDCITY is null
                            set @CONSTITUENT_UPDATEDCITY = N'';

                        if @CONSTITUENT_UPDATEDPOSTCODE is null
                            set @CONSTITUENT_UPDATEDPOSTCODE = N'';

                        if @CONSTITUENT_UPDATEDPHONE is null
                            set @CONSTITUENT_UPDATEDPHONE = N'';

                        if @CONSTITUENT_UPDATEDEMAILADDRESS is null
                            set @CONSTITUENT_UPDATEDEMAILADDRESS = N'';

                        if @CONSTITUENT_LOOKUPID is null
                            set @CONSTITUENT_LOOKUPID = N'';

                        if @CONSTITUENT_AUTOMATCHSTATUSCODE is null
                            set @CONSTITUENT_AUTOMATCHSTATUSCODE = 0;

                        if @REGISTRANT_AMOUNT is null
                            set @REGISTRANT_AMOUNT = 0;

                        if @AUCTIONITEM_UPDATEDNAME is null
                            set @AUCTIONITEM_UPDATEDNAME = N'';

                        if @AUCTIONITEM_UPDATEDDESCRIPTION is null
                            set @AUCTIONITEM_UPDATEDDESCRIPTION = N'';

                        if @AUCTIONITEM_UPDATEDCATEGORY is null
                            set @AUCTIONITEM_UPDATEDCATEGORY = N'';

                        if @AUCTIONITEM_UPDATEDSUBCATEGORY is null
                            set @AUCTIONITEM_UPDATEDSUBCATEGORY = N'';

                        if @AUCTIONITEM_UPDATEDMINIMUMBID is null
                            set @AUCTIONITEM_UPDATEDMINIMUMBID = 0;

                        if @AUCTIONITEM_UPDATEDVALUE is null
                            set @AUCTIONITEM_UPDATEDVALUE = 0;

                        if @AUCTIONITEM_ADJUSTMENTREASON is null
                            set @AUCTIONITEM_ADJUSTMENTREASON = N'';

                        if @PURCHASE_AMOUNT is null
                            set @PURCHASE_AMOUNT = 0;

                        if @PURCHASE_BIDDERNUMBER is null
                            set @PURCHASE_BIDDERNUMBER = N'';

                        if @PURCHASE_POSTSTATUSCODE is null
                            set @PURCHASE_POSTSTATUSCODE = 1;

                        if @PURCHASE_PAYMENTMETHODCODE is null
                            set @PURCHASE_PAYMENTMETHODCODE = 0;

                        if @PACKAGE_MAPPINGID Is null
                            set @PACKAGE_MAPPINGID = 0;

                        if @PACKAGE_NAME is null
                            set @PACKAGE_NAME = N'';

                        if @PACKAGE_DESCRIPTION is null
                            set @PACKAGE_DESCRIPTION = 0;

                        if @PACKAGE_CATEGORY is null
                            set @PACKAGE_CATEGORY = N'';

                        if @PACKAGE_SUBCATEGORY is null
                            set @PACKAGE_SUBCATEGORY = N'';

                        if @PACKAGE_MINIMUMBID is null
                            set @PACKAGE_MINIMUMBID = 0;

                        if (select top 1 RECORDTYPECODE from dbo.BATCHAMPROIMPORT where ID = @ID) <> @RECORDTYPECODE
                            raiserror('ERR_RECORDTYPECODE_CANNOTCHANGE', 13, 1);

                        update dbo.BATCHAMPROIMPORT
                            set 
                                ORIGINATINGBATCHROWID = @ORIGINATINGBATCHROWID,
                                WASLOOKEDUP = @WASLOOKEDUP,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CHANGEDATE
                        where ID = @ID;

                        declare @CONTEXT_CACHE varbinary(128);
                        set @CONTEXT_CACHE = CONTEXT_INFO();
                        if not @CHANGEAGENTID is null
                            set CONTEXT_INFO @CHANGEAGENTID;

                        delete dbo.BATCHAMPROIMPORTMESSAGE where AMPROIMPORTID = @ID;
                        if not @MESSAGES is null
                            insert into dbo.BATCHAMPROIMPORTMESSAGE(ID, AMPROIMPORTID, SEQUENCE, MESSAGETYPECODE, MESSAGE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                                select 
                                    newid(),
                                    @ID,
                                    T.c.value('SEQUENCE[1]', 'int'),
                                    T.c.value('MESSAGETYPECODE[1]', 'tinyint'),
                                    T.c.value('MESSAGE[1]', 'nvarchar(2000)'),
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID,
                                    @CHANGEDATE,
                                    @CHANGEDATE
                                from @MESSAGES.nodes('/MESSAGES/ITEM') T(c);

                        if @RECORDTYPECODE = 1 
                        begin
                            --Event
                            update dbo.BATCHAMPROIMPORTEVENT
                                set EVENT_NAME = @EVENT_NAME,
                                    EVENT_STARTDATE = @EVENT_STARTDATE

                            where ID = @ID;
                        end
                        else if @RECORDTYPECODE = 2
                        begin
                            --Constituent 
                            update dbo.BATCHAMPROIMPORTCONSTITUENT
                                set 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,
                                    DATECHANGED = @CHANGEDATE,
                                    CHANGEDBYID = @CHANGEAGENTID
                            where ID = @ID;

                        end
                        else if @RECORDTYPECODE = 3
                        begin
                            --Registrant
                            update dbo.BATCHAMPROIMPORTREGISTRANT
                                set REGISTRANT_CONSTITUENTID = @REGISTRANT_CONSTITUENTID,
                                    REGISTRANT_EVENTPRICEID = @REGISTRANT_EVENTPRICEID,
                                    REGISTRANT_AMOUNT= @REGISTRANT_AMOUNT,
                                    DATECHANGED = @CHANGEDATE,
                                    CHANGEDBYID = @CHANGEAGENTID
                            where ID = @ID;
                        end
                        else if @RECORDTYPECODE = 4
                        begin
                            --Auction item
                            update dbo.BATCHAMPROIMPORTITEM
                                set 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,
                                    DATECHANGED = @CHANGEDATE,
                                    CHANGEDBYID = @CHANGEAGENTID
                            where ID = @ID;
                        end
                        else if @RECORDTYPECODE = 5
                        begin
                            --Purchase
                                update dbo.BATCHAMPROIMPORTPURCHASE
                                    set PURCHASE_CONSTITUENTID = @PURCHASE_CONSTITUENTID,
                                        PURCHASE_BIDDERNUMBER = @PURCHASE_BIDDERNUMBER,
                                        PURCHASE_AMOUNT = @PURCHASE_AMOUNT,
                                        PURCHASE_DATE = coalesce(dbo.UFN_DATE_GETEARLIESTTIME(@PURCHASE_DATE), null),
                                        PURCHASE_POSTDATE = coalesce(dbo.UFN_DATE_GETEARLIESTTIME(@PURCHASE_POSTDATE), null),
                                        PURCHASE_POSTSTATUSCODE = @PURCHASE_POSTSTATUSCODE,
                                        PURCHASE_PAYMENTMETHODCODE = @PURCHASE_PAYMENTMETHODCODE,
                                        PURCHASE_CREDITTYPECODEID = @PURCHASE_CREDITTYPECODEID,
                                        DATECHANGED = @CHANGEDATE,
                                        CHANGEDBYID = @CHANGEAGENTID
                                where ID = @ID;

                                delete from dbo.BATCHAMPROIMPORTPURCHASEDETAIL
                                where PURCHASEDETAIL_PURCHASEID = @ID;

                                insert into dbo.BATCHAMPROIMPORTPURCHASEDETAIL
                                        (ID, PURCHASEDETAIL_PURCHASEID, PURCHASEDETAIL_ITEMID, PURCHASE_REGISTRANTID,
                                        PURCHASEDETAIL_AMOUNT, PURCHASEDETAIL_TRANSACTIONTYPECODE, PURCHASEDETAIL_DESIGNATIONID,
                                        ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                                select 
                                    newid(),
                                    @ID,
                                    T.c.value('PURCHASEDETAIL_ITEMID[1]', 'uniqueidentifier'),
                                    T.c.value('PURCHASEDETAIL_REGISTRANTID[1]', 'uniqueidentifier'),
                                    T.c.value('PURCHASEDETAIL_AMOUNT[1]', 'money'),
                                    T.c.value('PURCHASEDETAIL_TRANSACTIONTYPECODE[1]', 'tinyint'),
                                    T.c.value('PURCHASEDETAIL_DESIGNATIONID[1]', 'uniqueidentifier'),
                                    @CHANGEAGENTID, @CHANGEAGENTID, @CHANGEDATE, @CHANGEDATE
                                from @PURCHASE_DETAIL.nodes('/PURCHASE_DETAIL/ITEM') T(c)
                        end
                        else if @RECORDTYPECODE = 6
                        begin
                            --Package
                            update dbo.BATCHAMPROIMPORTPACKAGE
                                set 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,
                                DATECHANGED = @CHANGEDATE,
                                CHANGEDBYID = @CHANGEAGENTID
                            where ID = @ID;
                        end

                        if not @CONTEXT_CACHE is null
                            set CONTEXT_INFO @CONTEXT_CACHE;
                    end try
                    begin catch
                        exec dbo.USP_RAISE_ERROR;
                        return 1;
                    end catch

                    return 0;