USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHROW_12
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CONSTITUENTID | uniqueidentifier | IN | |
@TYPECODE | tinyint | IN | |
@DATE | datetime | IN | |
@AMOUNT | money | IN | |
@PAYMENTMETHODCODE | tinyint | IN | |
@DONOTACKNOWLEDGE | bit | IN | |
@CHECKDATE | UDT_FUZZYDATE | IN | |
@CHECKNUMBER | nvarchar(20) | IN | |
@REFERENCEDATE | UDT_FUZZYDATE | IN | |
@REFERENCENUMBER | nvarchar(20) | IN | |
@CARDHOLDERNAME | nvarchar(255) | IN | |
@CREDITCARDNUMBER | nvarchar(20) | IN | |
@CREDITTYPECODEID | uniqueidentifier | IN | |
@AUTHORIZATIONCODE | nvarchar(20) | IN | |
@EXPIRESON | UDT_FUZZYDATE | IN | |
@ISSUER | nvarchar(100) | IN | |
@NUMBEROFUNITS | decimal(20, 3) | IN | |
@SYMBOL | nvarchar(25) | IN | |
@MEDIANPRICE | decimal(19, 4) | IN | |
@PROPERTYSUBTYPECODEID | uniqueidentifier | IN | |
@GIFTINKINDSUBTYPECODEID | uniqueidentifier | IN | |
@RECEIPTAMOUNT | money | IN | |
@DONOTRECEIPT | bit | IN | |
@CONSTITUENTACCOUNTID | uniqueidentifier | IN | |
@SPLITS | xml | IN | |
@SINGLEDESIGNATIONID | uniqueidentifier | IN | |
@REVENUESTREAMS | xml | IN | |
@APPLYTOSHOWNFORCONSTITUENTID | uniqueidentifier | IN | |
@SEQUENCE | int | IN | |
@INSTALLMENTFREQUENCYCODE | tinyint | IN | |
@INSTALLMENTSTARTDATE | datetime | IN | |
@INSTALLMENTENDDATE | datetime | IN | |
@NUMBEROFINSTALLMENTS | int | IN | |
@SOLICITORS | xml | IN | |
@BENEFITS | xml | IN | |
@FINDERNUMBER | bigint | IN | |
@SOURCECODE | nvarchar(60) | IN | |
@APPEALID | uniqueidentifier | IN | |
@FINDERNUMBERISVALID | bit | IN | |
@USERMODIFIEDBENEFITS | bit | IN | |
@BENEFITSWAIVED | bit | IN | |
@POSTDATE | datetime | IN | |
@POSTSTATUSCODE | tinyint | IN | |
@SENDPLEDGEREMINDER | bit | IN | |
@SALEDATE | datetime | IN | |
@SALEAMOUNT | money | IN | |
@BROKERFEE | money | IN | |
@SALEPOSTSTATUSCODE | tinyint | IN | |
@SALEPOSTDATE | datetime | IN | |
@NOTETITLE | nvarchar(50) | IN | |
@NOTEAUTHORID | uniqueidentifier | IN | |
@NOTEDATEENTERED | datetime | IN | |
@NOTETYPECODEID | uniqueidentifier | IN | |
@NOTETEXTNOTE | nvarchar(max) | IN | |
@MGMATCHINGCONSTITUENTID | uniqueidentifier | IN | |
@MGDATE | datetime | IN | |
@MGAMOUNT | money | IN | |
@MGPOSTDATE | datetime | IN | |
@MGPOSTSTATUSCODE | tinyint | IN | |
@MGCONDITIONID | uniqueidentifier | IN | |
@MGSPLITS | xml | IN | |
@GIVENANONYMOUSLY | bit | IN | |
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID | uniqueidentifier | IN | |
@USERMODIFIEDRECEIPTAMOUNT | bit | IN | |
@PLEDGESUBTYPEID | uniqueidentifier | IN | |
@REJECTIONCODEID | uniqueidentifier | IN | |
@CONSTITUENTLOOKUPID | uniqueidentifier | IN | |
@MAILINGID | uniqueidentifier | IN | |
@CHANNELCODEID | uniqueidentifier | IN | |
@INSTALLMENTS | xml | IN | |
@PAYMENTFORPLEDGEAMOUNT | money | IN | |
@RECOGNITIONS | xml | IN | |
@DIDRECOGNITIONSDEFAULT | bit | IN | |
@TRIBUTES | xml | IN | |
@UNAPPLIEDMATCHINGGIFTSPLITS | xml | IN | |
@UNAPPLIEDMATCHINGGIFTAMOUNT | money | IN | |
@RECEIPTTYPECODE | tinyint | IN | |
@NEWCONSTITUENT | xml | IN | |
@MGRELATIONSHIPID | uniqueidentifier | IN | |
@OTHERPAYMENTMETHODCODEID | uniqueidentifier | IN | |
@LETTERCODEID | uniqueidentifier | IN | |
@ACKNOWLEDGEDATE | datetime | IN | |
@REFERENCE | nvarchar(255) | IN | |
@CATEGORYCODEID | uniqueidentifier | IN | |
@ACKNOWLEDGEEID | uniqueidentifier | IN | |
@APPLICATIONCODE | tinyint | IN | |
@OTHERTYPECODEID | uniqueidentifier | IN | |
@OPPORTUNITYID | uniqueidentifier | IN | |
@DIRECTDEBITRESULTCODE | nvarchar(10) | IN | |
@LOWPRICE | decimal(19, 4) | IN | |
@HIGHPRICE | decimal(19, 4) | IN | |
@NUMBEROFUNITSSOLD | decimal(20, 3) | IN | |
@USERMODIFIEDNUMBEROFUNITSSOLD | bit | IN | |
@CREDITCARDTOKEN | uniqueidentifier | IN | |
@REJECTIONMESSAGE | nvarchar(250) | IN | |
@PARTIALCREDITCARDNUMBER | nvarchar(4) | IN | |
@TAXDECLARATIONS | xml | IN | |
@STANDINGORDERCONSTITUENTACCOUNTID | uniqueidentifier | IN | |
@STANDINGORDERREFERENCENUMBER | nvarchar(18) | IN | |
@STANDINGORDERREFERENCEDATE | UDT_FUZZYDATE | IN | |
@STANDINGORDERSETUP | bit | IN | |
@STANDINGORDERSETUPDATE | datetime | IN | |
@TRANSACTIONID | uniqueidentifier | IN | |
@ISTRANSIENTCARD | bit | IN | |
@DECLINESGIFTAID | bit | IN | |
@DDISOURCECODEID | uniqueidentifier | IN | |
@DDISOURCEDATE | date | IN | |
@ISCOVENANT | bit | IN | |
@AMOUNTFORVAT | money | IN | |
@VATTAXRATEID | uniqueidentifier | IN | |
@VATAMOUNT | money | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@PERCENTAGEBENEFITS | xml | IN | |
@ISGIFTAIDSPONSORSHIP | bit | IN | |
@GENERATEREFERENCENUMBER | bit | IN | |
@SOURCECODEIMPORT | nvarchar(60) | IN | |
@MERCHANTACCOUNTID | uniqueidentifier | IN | |
@VENDORID | nvarchar(50) | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHROW_12
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@CONSTITUENTID uniqueidentifier,
@TYPECODE tinyint,
@DATE datetime,
@AMOUNT money,
@PAYMENTMETHODCODE tinyint,
@DONOTACKNOWLEDGE bit,
@CHECKDATE dbo.UDT_FUZZYDATE,
@CHECKNUMBER nvarchar(20),
@REFERENCEDATE dbo.UDT_FUZZYDATE,
@REFERENCENUMBER nvarchar(20),
@CARDHOLDERNAME nvarchar(255),
@CREDITCARDNUMBER nvarchar(20),
@CREDITTYPECODEID uniqueidentifier,
@AUTHORIZATIONCODE nvarchar(20),
@EXPIRESON dbo.UDT_FUZZYDATE,
@ISSUER nvarchar(100),
@NUMBEROFUNITS decimal(20,3),
@SYMBOL nvarchar(25),
@MEDIANPRICE decimal(19,4),
@PROPERTYSUBTYPECODEID uniqueidentifier,
@GIFTINKINDSUBTYPECODEID uniqueidentifier,
@RECEIPTAMOUNT money,
@DONOTRECEIPT bit,
@CONSTITUENTACCOUNTID uniqueidentifier,
@SPLITS xml,
@SINGLEDESIGNATIONID uniqueidentifier,
@REVENUESTREAMS xml,
@APPLYTOSHOWNFORCONSTITUENTID uniqueidentifier,
@SEQUENCE int,
@INSTALLMENTFREQUENCYCODE tinyint,
@INSTALLMENTSTARTDATE datetime,
@INSTALLMENTENDDATE datetime,
@NUMBEROFINSTALLMENTS int,
@SOLICITORS xml,
@BENEFITS xml,
@FINDERNUMBER bigint,
@SOURCECODE nvarchar(60),
@APPEALID uniqueidentifier,
@FINDERNUMBERISVALID bit,
@USERMODIFIEDBENEFITS bit,
@BENEFITSWAIVED bit,
@POSTDATE datetime,
@POSTSTATUSCODE tinyint,
@SENDPLEDGEREMINDER bit,
@SALEDATE datetime,
@SALEAMOUNT money,
@BROKERFEE money,
@SALEPOSTSTATUSCODE tinyint,
@SALEPOSTDATE datetime,
@NOTETITLE nvarchar(50),
@NOTEAUTHORID uniqueidentifier,
@NOTEDATEENTERED datetime,
@NOTETYPECODEID uniqueidentifier,
@NOTETEXTNOTE nvarchar(max),
@MGMATCHINGCONSTITUENTID uniqueidentifier,
@MGDATE datetime,
@MGAMOUNT money,
@MGPOSTDATE datetime,
@MGPOSTSTATUSCODE tinyint,
@MGCONDITIONID uniqueidentifier,
@MGSPLITS xml,
@GIVENANONYMOUSLY bit,
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID uniqueidentifier,
@USERMODIFIEDRECEIPTAMOUNT bit,
@PLEDGESUBTYPEID uniqueidentifier,
@REJECTIONCODEID uniqueidentifier,
@CONSTITUENTLOOKUPID uniqueidentifier,
@MAILINGID uniqueidentifier,
@CHANNELCODEID uniqueidentifier,
@INSTALLMENTS xml,
@PAYMENTFORPLEDGEAMOUNT money,
@RECOGNITIONS xml,
@DIDRECOGNITIONSDEFAULT bit,
@TRIBUTES xml,
@UNAPPLIEDMATCHINGGIFTSPLITS xml,
@UNAPPLIEDMATCHINGGIFTAMOUNT money,
@RECEIPTTYPECODE tinyint,
@NEWCONSTITUENT xml,
@MGRELATIONSHIPID uniqueidentifier,
@OTHERPAYMENTMETHODCODEID uniqueidentifier,
@LETTERCODEID uniqueidentifier,
@ACKNOWLEDGEDATE datetime,
@REFERENCE nvarchar(255),
@CATEGORYCODEID uniqueidentifier,
@ACKNOWLEDGEEID uniqueidentifier,
@APPLICATIONCODE tinyint,
@OTHERTYPECODEID uniqueidentifier,
@OPPORTUNITYID uniqueidentifier,
@DIRECTDEBITRESULTCODE nvarchar(10),
@LOWPRICE decimal(19,4),
@HIGHPRICE decimal(19,4),
@NUMBEROFUNITSSOLD decimal(20,3),
@USERMODIFIEDNUMBEROFUNITSSOLD bit,
@CREDITCARDTOKEN uniqueidentifier,
@REJECTIONMESSAGE nvarchar(250),
-- PARTIALCREDITCARDNUMBER is used just to support import and so is only
-- actually used on RevenueBatchDataForm.Add.xml
@PARTIALCREDITCARDNUMBER nvarchar(4),
@TAXDECLARATIONS xml,
@STANDINGORDERCONSTITUENTACCOUNTID uniqueidentifier,
@STANDINGORDERREFERENCENUMBER nvarchar(18),
@STANDINGORDERREFERENCEDATE dbo.UDT_FUZZYDATE,
@STANDINGORDERSETUP bit,
@STANDINGORDERSETUPDATE datetime,
@TRANSACTIONID uniqueidentifier,
@ISTRANSIENTCARD bit,
@DECLINESGIFTAID bit,
@DDISOURCECODEID uniqueidentifier,
@DDISOURCEDATE date,
@ISCOVENANT bit,
@AMOUNTFORVAT money,
@VATTAXRATEID uniqueidentifier,
@VATAMOUNT money,
@CURRENTAPPUSERID uniqueidentifier = null,
@PERCENTAGEBENEFITS xml,
@ISGIFTAIDSPONSORSHIP bit,
@GENERATEREFERENCENUMBER bit,
@SOURCECODEIMPORT nvarchar(60),
@MERCHANTACCOUNTID uniqueidentifier,
@VENDORID nvarchar(50)
)
as
begin
set nocount on;
declare @CURRENTDATE datetime;
declare @BATCHID uniqueidentifier;
if @ID is null
set @ID = NewID()
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
set @CURRENTDATE = GetDate();
declare @contextCache varbinary(128);
set @contextCache = CONTEXT_INFO();
if not @CHANGEAGENTID is null
set CONTEXT_INFO @CHANGEAGENTID;
begin try
if @PAYMENTMETHODCODE = 11 --Standing order
begin
set @CONSTITUENTACCOUNTID = @STANDINGORDERCONSTITUENTACCOUNTID;
--if @CONSTITUENTACCOUNTID is null
--begin
--raiserror('Standing order account must be specified for standing order payments', 13, 1)
--end
set @REFERENCEDATE = @STANDINGORDERREFERENCEDATE;
if @GENERATEREFERENCENUMBER is null or @GENERATEREFERENCENUMBER = 1
select
@STANDINGORDERREFERENCENUMBER = '',
@GENERATEREFERENCENUMBER = 1
end
--JamesWill CR269707-031107 2007/03/19 Set default values for any non-nullable fields that might come in as null
if @DONOTACKNOWLEDGE is null
set @DONOTACKNOWLEDGE = 0;
if @CHECKDATE is null
set @CHECKDATE = '00000000';
if @CHECKNUMBER is null
set @CHECKNUMBER = '';
if @REFERENCEDATE is null
set @REFERENCEDATE = '00000000';
if @REFERENCENUMBER is null
set @REFERENCENUMBER = '';
if @CARDHOLDERNAME is null
set @CARDHOLDERNAME = '';
if @CREDITCARDNUMBER is null
set @CREDITCARDNUMBER = '';
if @AUTHORIZATIONCODE is null
set @AUTHORIZATIONCODE = '';
if @EXPIRESON is null
set @EXPIRESON = '00000000';
if @ISSUER is null
set @ISSUER = '';
if @NUMBEROFUNITS is null
set @NUMBEROFUNITS = 0;
if @NUMBEROFUNITSSOLD is null
set @NUMBEROFUNITSSOLD = 0;
if @USERMODIFIEDNUMBEROFUNITSSOLD is null
set @USERMODIFIEDNUMBEROFUNITSSOLD = 0;
if @SYMBOL is null
set @SYMBOL = '';
if @MEDIANPRICE is null
set @MEDIANPRICE = 0;
if @LOWPRICE is null
set @LOWPRICE = 0;
if @HIGHPRICE is null
set @HIGHPRICE = 0;
if @RECEIPTAMOUNT is null
set @RECEIPTAMOUNT = 0;
if @DONOTRECEIPT is null
set @DONOTRECEIPT = 0;
if @NUMBEROFINSTALLMENTS is null
set @NUMBEROFINSTALLMENTS = 1;
if @SOURCECODE is null
set @SOURCECODE = '';
if @FINDERNUMBERISVALID is null
set @FINDERNUMBERISVALID = 0;
if @USERMODIFIEDBENEFITS is null
set @USERMODIFIEDBENEFITS = 0;
if @BENEFITSWAIVED is null
set @BENEFITSWAIVED = 0;
if @SENDPLEDGEREMINDER is null
set @SENDPLEDGEREMINDER = 1;
if @SALEAMOUNT is null
set @SALEAMOUNT = 0;
if @BROKERFEE is null
set @BROKERFEE = 0;
if @NOTETITLE is null
set @NOTETITLE = '';
if @NOTETEXTNOTE is null
set @NOTETEXTNOTE = '';
if @MGAMOUNT is null
set @MGAMOUNT = 0;
if @MGPOSTSTATUSCODE is null
set @MGPOSTSTATUSCODE = 1;
if @GIVENANONYMOUSLY is null
set @GIVENANONYMOUSLY = 0;
if @USERMODIFIEDRECEIPTAMOUNT is null
set @USERMODIFIEDRECEIPTAMOUNT = 0;
if @PAYMENTFORPLEDGEAMOUNT is null
set @PAYMENTFORPLEDGEAMOUNT = 0;
if @DIDRECOGNITIONSDEFAULT is null
set @DIDRECOGNITIONSDEFAULT = 0;
if @STANDINGORDERREFERENCEDATE is null
set @REFERENCEDATE = '00000000';
if @STANDINGORDERSETUP is null
set @STANDINGORDERSETUP = 0;
if @STANDINGORDERREFERENCENUMBER is null
set @STANDINGORDERREFERENCENUMBER = '';
if @AMOUNTFORVAT is null
set @AMOUNTFORVAT = 0;
if @VATAMOUNT is null
set @VATAMOUNT = 0;
if @FINDERNUMBER is null
set @FINDERNUMBER = 0;
if cast(@SPLITS as nvarchar(max)) = ''
set @SPLITS = null;
if not @SPLITS is null
set @SINGLEDESIGNATIONID = null;
if @PAYMENTMETHODCODE is null
set @PAYMENTMETHODCODE = 255;
/* JamesWill CR267402-021907 INSTALLMENTFREQUENCYCODE cannot be null in the database, but it can be null in the defaults */
if @INSTALLMENTFREQUENCYCODE is null
begin
-- For Recurring Gifts, default to Monthly. For other types, use Single Installment.
if @TYPECODE = 3
set @INSTALLMENTFREQUENCYCODE = 3;
else
set @INSTALLMENTFREQUENCYCODE = 5;
end
/* JamesWill CR265838-020507 2007/03/07 */
if @POSTSTATUSCODE is null
set @POSTSTATUSCODE = 255;
if @SALEPOSTSTATUSCODE is null
set @SALEPOSTSTATUSCODE = 255;
if @RECEIPTTYPECODE is null
set @RECEIPTTYPECODE = 255;
if @APPLICATIONCODE is null
set @APPLICATIONCODE = 255;
if @PAYMENTFORPLEDGEAMOUNT is null
set @PAYMENTFORPLEDGEAMOUNT = 0;
/* Lookup and set all possible marketing data (via output params) from the data that was specified. */
select
@BATCHID = [BATCHID]
from
dbo.[BATCHREVENUE]
where
[ID] = @ID;
declare @LOOKUPSINGLEDESIGNATION bit = (case when @SINGLEDESIGNATIONID is null and @SPLITS is null and @REVENUESTREAMS is null then 1 else 0 end);
exec dbo.[USP_REVENUEBATCH_GETMARKETINGDATA]
@FINDERNUMBER = @FINDERNUMBER,
@LOOKUPSINGLEDESIGNATION = @LOOKUPSINGLEDESIGNATION,
@CHANGEAGENTID = @CHANGEAGENTID,
@CURRENTAPPUSERID = @CURRENTAPPUSERID,
@SOURCECODE = @SOURCECODE output,
@MAILINGID = @MAILINGID output,
@APPEALID = @APPEALID output,
@CONSTITUENTID = @CONSTITUENTID output,
@FINDERNUMBERISVALID = @FINDERNUMBERISVALID output,
@SINGLEDESIGNATIONID = @SINGLEDESIGNATIONID output,
@BATCHID = @BATCHID;
declare @CREDITCARDID uniqueidentifier;
if @PAYMENTMETHODCODE = 2
exec dbo.USP_CREDITCARD_SAVE
@ID = @CREDITCARDID output,
@CREDITCARDTOKEN = @CREDITCARDTOKEN,
@CARDHOLDERNAME = @CARDHOLDERNAME,
@CREDITCARDPARTIALNUMBER = @CREDITCARDNUMBER,
@CREDITTYPECODEID = @CREDITTYPECODEID,
@EXPIRESON = @EXPIRESON,
@CHANGEAGENTID = @CHANGEAGENTID,
@CURRENTDATE = @CURRENTDATE,
@ISTRANSIENT = @ISTRANSIENTCARD;
update dbo.BATCHREVENUE
set CONSTITUENTID = @CONSTITUENTID,
TYPECODE = @TYPECODE,
DATE = @DATE,
PAYMENTMETHODCODE = @PAYMENTMETHODCODE,
DONOTACKNOWLEDGE = @DONOTACKNOWLEDGE,
CHECKDATE = @CHECKDATE,
CHECKNUMBER = @CHECKNUMBER,
REFERENCEDATE = @REFERENCEDATE,
REFERENCENUMBER = @REFERENCENUMBER,
CREDITCARDID = @CREDITCARDID,
AUTHORIZATIONCODE = @AUTHORIZATIONCODE,
CONSTITUENTACCOUNTID = @CONSTITUENTACCOUNTID,
AMOUNT = @AMOUNT,
RECEIPTAMOUNT = @RECEIPTAMOUNT,
DONOTRECEIPT = @DONOTRECEIPT,
SEQUENCE = @SEQUENCE,
INSTALLMENTFREQUENCYCODE = @INSTALLMENTFREQUENCYCODE,
INSTALLMENTSTARTDATE = @INSTALLMENTSTARTDATE,
INSTALLMENTENDDATE = @INSTALLMENTENDDATE,
NUMBEROFINSTALLMENTS = @NUMBEROFINSTALLMENTS,
APPLYTOSHOWNFORCONSTITUENTID = @APPLYTOSHOWNFORCONSTITUENTID,
FINDERNUMBER = @FINDERNUMBER,
SOURCECODE = @SOURCECODE,
APPEALID = @APPEALID,
FINDERNUMBERISVALID = @FINDERNUMBERISVALID,
USERMODIFIEDBENEFITS = @USERMODIFIEDBENEFITS,
BENEFITSWAIVED = @BENEFITSWAIVED,
POSTDATE = @POSTDATE,
POSTSTATUSCODE = @POSTSTATUSCODE,
SENDPLEDGEREMINDER = @SENDPLEDGEREMINDER,
SALEDATE = @SALEDATE,
SALEAMOUNT = @SALEAMOUNT,
BROKERFEE = @BROKERFEE,
SALEPOSTSTATUSCODE = @SALEPOSTSTATUSCODE,
SALEPOSTDATE = @SALEPOSTDATE,
ISSUER = @ISSUER,
MERCHANTACCOUNTID = @MERCHANTACCOUNTID,
NUMBEROFUNITS = @NUMBEROFUNITS,
SYMBOL = @SYMBOL,
MEDIANPRICE = @MEDIANPRICE,
GIFTINKINDSUBTYPECODEID = @GIFTINKINDSUBTYPECODEID,
PROPERTYSUBTYPECODEID = @PROPERTYSUBTYPECODEID,
NOTETITLE = @NOTETITLE,
NOTEAUTHORID = @NOTEAUTHORID,
NOTEDATEENTERED = @NOTEDATEENTERED,
NOTETYPECODEID = @NOTETYPECODEID,
NOTETEXTNOTE = @NOTETEXTNOTE,
MGMATCHINGCONSTITUENTID = @MGMATCHINGCONSTITUENTID,
MGDATE = @MGDATE,
MGAMOUNT = @MGAMOUNT,
MGPOSTDATE = null, --JamesWill CR275664-052107 2007/05/24 Matching gift claims are never posted
MGPOSTSTATUSCODE = 2, --JamesWill CR275664-052107 2007/05/24 Matching gift claims are never posted
MGCONDITIONID = @MGCONDITIONID,
GIVENANONYMOUSLY = @GIVENANONYMOUSLY,
GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID = @GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID,
USERMODIFIEDRECEIPTAMOUNT = @USERMODIFIEDRECEIPTAMOUNT,
PLEDGESUBTYPEID = @PLEDGESUBTYPEID,
REJECTIONMESSAGE = @REJECTIONMESSAGE,
MAILINGID = @MAILINGID,
CHANNELCODEID = @CHANNELCODEID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
PAYMENTFORPLEDGEAMOUNT = @PAYMENTFORPLEDGEAMOUNT,
RECEIPTTYPECODE = @RECEIPTTYPECODE,
MGRELATIONSHIPID =@MGRELATIONSHIPID,
OTHERPAYMENTMETHODCODEID = @OTHERPAYMENTMETHODCODEID,
LETTERCODEID = @LETTERCODEID,
ACKNOWLEDGEDATE = @ACKNOWLEDGEDATE,
REFERENCE = @REFERENCE,
GLREVENUECATEGORYMAPPINGID = @CATEGORYCODEID,
ACKNOWLEDGEEID = @ACKNOWLEDGEEID,
APPLICATIONCODE = @APPLICATIONCODE,
OTHERTYPECODEID = @OTHERTYPECODEID,
OPPORTUNITYID = @OPPORTUNITYID,
DIRECTDEBITRESULTCODE = @DIRECTDEBITRESULTCODE,
LOWPRICE = @LOWPRICE,
HIGHPRICE = @HIGHPRICE,
NUMBEROFUNITSSOLD = @NUMBEROFUNITSSOLD,
USERMODIFIEDNUMBEROFUNITSSOLD = @USERMODIFIEDNUMBEROFUNITSSOLD,
STANDINGORDERSETUP = @STANDINGORDERSETUP,
STANDINGORDERSETUPDATE = @STANDINGORDERSETUPDATE,
USESYSTEMGENERATEDREFERENCENUMBER = @GENERATEREFERENCENUMBER,
STANDINGORDERREFERENCENUMBER = @STANDINGORDERREFERENCENUMBER,
TRANSACTIONID = @TRANSACTIONID,
DECLINESGIFTAID = coalesce(@DECLINESGIFTAID, 0),
DDISOURCECODEID = @DDISOURCECODEID,
DDISOURCEDATE = @DDISOURCEDATE,
ISCOVENANT = @ISCOVENANT,
AMOUNTFORVAT = @AMOUNTFORVAT,
VATTAXRATEID = @VATTAXRATEID,
VATAMOUNT = @VATAMOUNT,
ISGIFTAIDSPONSORSHIP = coalesce(@ISGIFTAIDSPONSORSHIP, 0),
VENDORID = isnull(@VENDORID, '')
where ID = @ID;
-- Create the splits collection with the single designation if the splits collection is null and the designation isn't
if @SPLITS is null and @SINGLEDESIGNATIONID is not null
begin
set @SPLITS = (select
@SINGLEDESIGNATIONID as DESIGNATIONID,
@AMOUNT as AMOUNT,
@DECLINESGIFTAID as DECLINESGIFTAID,
1 as SEQUENCE,
@ISGIFTAIDSPONSORSHIP as ISGIFTAIDSPONSORSHIP
for xml raw('ITEM'),type,elements,root('SPLITS'),binary base64)
end
if @SPLITS is not null
begin
exec dbo.USP_REVENUEBATCH_SPLITSWITHCHILDREN_UPDATEFROMXML @ID, @SPLITS, @DATE, @CHANGEAGENTID, @CURRENTDATE;
end
else
delete from dbo.BATCHREVENUESPLIT where BATCHREVENUEID = @ID;
exec dbo.USP_REVENUEBATCH_GETRECOGNITIONS_UPDATEFROMXML @ID, @RECOGNITIONS, @CHANGEAGENTID;
if @DIDRECOGNITIONSDEFAULT = 0
begin
-- Bug 67025 - AdamBu 12/3/09 - When DIDRECOGNITIONSDEFAULT is false we should redefault recognitions.
-- We don't need to clear first because we can assume that RECOGNITIONS is null, so the previous
-- call to USP_REVENUEBATCH_GETRECOGNITIONS_UPDATEFROMXML has already done that.
-- Create default recognitions
declare @SCAMOUNT money;
if @REVENUESTREAMS is null
set @SCAMOUNT = @AMOUNT;
else
set @SCAMOUNT = @AMOUNT - (select SUM(APPLIED) from dbo.UFN_REVENUEBATCH_GETAPPLICATIONS_FROMITEMLISTXML(@REVENUESTREAMS));
if @SCAMOUNT > 0
begin
insert into dbo.BATCHREVENUERECOGNITION
(
BATCHREVENUEID,
CONSTITUENTID,
REVENUERECOGNITIONTYPECODEID,
AMOUNT,
EFFECTIVEDATE,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
select
@ID,
RECOGNITIONS.CONSTITUENTID,
RECOGNITIONS.REVENUERECOGNITIONTYPECODEID,
RECOGNITIONS.AMOUNT,
@date,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
from dbo.UFN_REVENUEBATCH_GETRECOGNITIONDEFAULTS(@GIVENANONYMOUSLY, @CONSTITUENTID, @SCAMOUNT, @DATE, null) as RECOGNITIONS;
end
end
exec dbo.USP_REVENUEBATCH_GETSOLICITORS_UPDATEFROMXML @ID, @SOLICITORS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETBENEFITS_UPDATEFROMXML @ID, @BENEFITS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETBENEFITSPCT_UPDATEFROMXML @ID, @PERCENTAGEBENEFITS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETMATCHINGGIFTSPLITS_UPDATEFROMXML @ID, @MGSPLITS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETUNAPPLIEDMATCHINGGIFTSPLITS_UPDATEFROMXML @ID, @UNAPPLIEDMATCHINGGIFTSPLITS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETINSTALLMENTS_UPDATEFROMXML @ID, @INSTALLMENTS, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETTRIBUTES_UPDATEFROMXML @ID, @TRIBUTES, @CHANGEAGENTID;
exec dbo.USP_REVENUEBATCH_GETTAXDECLARATIONS_UPDATEFROMXML @ID, @TAXDECLARATIONS, @CHANGEAGENTID;
--JamesWill CR268756-030207 2007/03/02
--Unset the ISPENDING flag for all of the gifts we were previously applying to from a generated transaction
update dbo.REVENUESCHEDULE
set REVENUESCHEDULE.ISPENDING = 0,
REVENUESCHEDULE.CHANGEDBYID = @CHANGEAGENTID,
REVENUESCHEDULE.DATECHANGED = @CURRENTDATE
where REVENUESCHEDULE.ID in (select REVENUEID from dbo.BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID and APPLIED > 0 and WASGENERATED = 1);
declare @PLEDGEIDS as table (ID uniqueidentifier);
insert into @PLEDGEIDS select BATCHREVENUEAPPLICATIONPLEDGEID from BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID
delete from dbo.BATCHREVENUEAPPLICATIONPLEDGE where ID in (select ID from @PLEDGEIDS);
declare @MEMBERSHIPIDS as table (ID uniqueidentifier);
insert into @MEMBERSHIPIDS select BATCHREVENUEAPPLICATIONMEMBERSHIPID from BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID
delete from dbo.BATCHREVENUEAPPLICATIONMEMBERSHIP where ID in (select ID from @MEMBERSHIPIDS);
delete from BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID;
exec dbo.USP_REVENUEBATCH_REVENUEAPPLICATIONS_ADDFROMXML @ID, @REVENUESTREAMS, @CHANGEAGENTID, @CURRENTDATE, @CURRENTAPPUSERID;
--JamesWill CR268756-030207 2007/03/02
--Set the ISPENDING flag for all gifts that we are currently applying to which were from a generated transaction
update dbo.REVENUESCHEDULE
set REVENUESCHEDULE.ISPENDING = 1,
REVENUESCHEDULE.CHANGEDBYID = @CHANGEAGENTID,
REVENUESCHEDULE.DATECHANGED = @CURRENTDATE
where REVENUESCHEDULE.ID in (select REVENUEID from dbo.BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID and APPLIED > 0 and WASGENERATED = 1)
if not @contextCache is null
set CONTEXT_INFO @contextCache;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0
end