USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHROW_8
The save procedure used by the edit dataform template "Revenue Batch Row Edit Form 8".
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. |
@CONSTITUENTID | uniqueidentifier | IN | Constituent |
@TYPECODE | tinyint | IN | Revenue type |
@DATE | datetime | IN | Date |
@AMOUNT | money | IN | Amount |
@PAYMENTMETHODCODE | tinyint | IN | Payment method |
@DONOTACKNOWLEDGE | bit | IN | Do not acknowledge |
@CHECKDATE | UDT_FUZZYDATE | IN | Check date |
@CHECKNUMBER | nvarchar(20) | IN | Check number |
@REFERENCEDATE | UDT_FUZZYDATE | IN | Reference date |
@REFERENCENUMBER | nvarchar(20) | IN | Reference number |
@CARDHOLDERNAME | nvarchar(100) | IN | Name on card |
@CREDITCARDNUMBER | nvarchar(20) | IN | Card number |
@CREDITTYPECODEID | uniqueidentifier | IN | Card type |
@AUTHORIZATIONCODE | nvarchar(20) | IN | Authorization code |
@EXPIRESON | UDT_FUZZYDATE | IN | Expires on |
@ISSUER | nvarchar(100) | IN | Issuer |
@NUMBEROFUNITS | int | IN | Number of units |
@SYMBOL | nvarchar(4) | IN | Symbol |
@MEDIANPRICE | money | IN | Median price |
@PROPERTYSUBTYPECODEID | uniqueidentifier | IN | Property subtype |
@GIFTINKINDSUBTYPECODEID | uniqueidentifier | IN | Gift-in-kind subtype |
@RECEIPTAMOUNT | money | IN | Receipt amount |
@DONOTRECEIPT | bit | IN | Do not receipt |
@CONSTITUENTACCOUNTID | uniqueidentifier | IN | Account |
@SPLITS | xml | IN | Designations |
@SINGLEDESIGNATIONID | uniqueidentifier | IN | Designation |
@REVENUESTREAMS | xml | IN | Revenue streams |
@APPLYTOSHOWNFORCONSTITUENTID | uniqueidentifier | IN | Apply to shown for constituent |
@SEQUENCE | int | IN | Sequence |
@INSTALLMENTFREQUENCYCODE | tinyint | IN | Installment frequency |
@INSTALLMENTSTARTDATE | datetime | IN | Installment start date |
@INSTALLMENTENDDATE | datetime | IN | Installment end date |
@NUMBEROFINSTALLMENTS | int | IN | No. installments |
@SOLICITORS | xml | IN | Solicitors |
@BENEFITS | xml | IN | Benefits |
@FINDERNUMBER | bigint | IN | Finder number |
@SOURCECODE | nvarchar(60) | IN | Source code |
@APPEALID | uniqueidentifier | IN | Appeal |
@FINDERNUMBERISVALID | bit | IN | Finder number is valid |
@USERMODIFIEDBENEFITS | bit | IN | User modified benefits |
@BENEFITSWAIVED | bit | IN | User waived benefits |
@POSTDATE | datetime | IN | GL post date |
@POSTSTATUSCODE | tinyint | IN | GL post status |
@SENDPLEDGEREMINDER | bit | IN | Send reminders |
@SALEDATE | datetime | IN | Sale date |
@SALEAMOUNT | money | IN | Sale amount |
@BROKERFEE | money | IN | Sale fees |
@SALEPOSTSTATUSCODE | tinyint | IN | Sale GL post status |
@SALEPOSTDATE | datetime | IN | Sale GL post date |
@NOTETITLE | nvarchar(50) | IN | Note Title |
@NOTEAUTHORID | uniqueidentifier | IN | Note Author |
@NOTEDATEENTERED | datetime | IN | Note Date |
@NOTETYPECODEID | uniqueidentifier | IN | Note Type |
@NOTETEXTNOTE | nvarchar(max) | IN | Notes |
@MGMATCHINGCONSTITUENTID | uniqueidentifier | IN | MG Matching constituent |
@MGDATE | datetime | IN | MG Date |
@MGAMOUNT | money | IN | MG Amount |
@MGPOSTDATE | datetime | IN | MG Post date |
@MGPOSTSTATUSCODE | tinyint | IN | MG Post status |
@MGCONDITIONID | uniqueidentifier | IN | Matching gift condition ID |
@MGSPLITS | xml | IN | MG Splits |
@GIVENANONYMOUSLY | bit | IN | Given anonymously |
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID | uniqueidentifier | IN | Given anonymously defaulted for constituent |
@USERMODIFIEDRECEIPTAMOUNT | bit | IN | User modified receipt amount |
@PLEDGESUBTYPEID | uniqueidentifier | IN | Pledge subtype |
@REJECTIONCODEID | uniqueidentifier | IN | Rejection code |
@CONSTITUENTLOOKUPID | uniqueidentifier | IN | Lookup ID |
@MAILINGID | uniqueidentifier | IN | Mailing |
@CHANNELCODEID | uniqueidentifier | IN | Inbound channel |
@INSTALLMENTS | xml | IN | Installments |
@PAYMENTFORPLEDGEAMOUNT | money | IN | Payment for pledge amount |
@RECOGNITIONS | xml | IN | Recognition credits |
@DIDRECOGNITIONSDEFAULT | bit | IN | Did default recognition credits |
@TRIBUTES | xml | IN | Tributes |
@UNAPPLIEDMATCHINGGIFTSPLITS | xml | IN | Unapplied MG Split |
@UNAPPLIEDMATCHINGGIFTAMOUNT | money | IN | Applied |
@RECEIPTTYPECODE | tinyint | IN | Receipt type |
@NEWCONSTITUENT | xml | IN | New constituent |
@MGRELATIONSHIPID | uniqueidentifier | IN | Relationship |
@OTHERPAYMENTMETHODCODEID | uniqueidentifier | IN | Other method |
@LETTERCODEID | uniqueidentifier | IN | Letter |
@ACKNOWLEDGEDATE | datetime | IN | Acknowledge date |
@REFERENCE | nvarchar(255) | IN | Reference |
@CATEGORYCODEID | uniqueidentifier | IN | Revenue category |
@ACKNOWLEDGEEID | uniqueidentifier | IN | Acknowledgee |
@APPLICATIONCODE | tinyint | IN | Application |
@OTHERTYPECODEID | uniqueidentifier | IN | Other type |
@OPPORTUNITYID | uniqueidentifier | IN | Opportunity |
@DIRECTDEBITRESULTCODE | nvarchar(10) | IN | Result code |
@LOWPRICE | money | IN | Low price |
@HIGHPRICE | money | IN | High price |
@NUMBEROFUNITSSOLD | int | IN | Sale number of units |
@USERMODIFIEDNUMBEROFUNITSSOLD | bit | IN | User modified number of units sold |
@CREDITCARDTOKEN | uniqueidentifier | IN | Credit card token |
@REJECTIONMESSAGE | nvarchar(250) | IN | Rejection message |
@PARTIALCREDITCARDNUMBER | nvarchar(4) | IN | Partial card number |
@TAXDECLARATIONS | xml | IN | Declarations |
@STANDINGORDERCONSTITUENTACCOUNTID | uniqueidentifier | IN | Standing order account |
@STANDINGORDERREFERENCENUMBER | nvarchar(20) | IN | Standing order reference number |
@STANDINGORDERREFERENCEDATE | UDT_FUZZYDATE | IN | Standing order reference date |
@STANDINGORDERSETUP | bit | IN | Standing order has been setup |
@STANDINGORDERSETUPDATE | datetime | IN | Standing order setup date |
@TRANSACTIONID | uniqueidentifier | IN | Transaction ID |
@ISTRANSIENTCARD | bit | IN | Is transient credit card |
@DECLINESGIFTAID | bit | IN | Declines Gift Aid |
@DDISOURCECODEID | uniqueidentifier | IN | DDI source |
@DDISOURCEDATE | date | IN | DDI source date |
@ISCOVENANT | bit | IN | Is covenant gift |
@AMOUNTFORVAT | money | IN | Portion subject to VAT |
@VATTAXRATEID | uniqueidentifier | IN | VAT tax rate |
@VATAMOUNT | money | IN | VAT amount |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHROW_8
(
@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(100),
@CREDITCARDNUMBER nvarchar(20),
@CREDITTYPECODEID uniqueidentifier,
@AUTHORIZATIONCODE nvarchar(20),
@EXPIRESON dbo.UDT_FUZZYDATE,
@ISSUER nvarchar(100),
@NUMBEROFUNITS integer,
@SYMBOL nvarchar(4),
@MEDIANPRICE money,
@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 money,
@HIGHPRICE money,
@NUMBEROFUNITSSOLD int,
@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(20),
@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
)
as
begin
set nocount on;
declare @CURRENTDATE datetime
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;
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 @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
set @INSTALLMENTFREQUENCYCODE = 5;
/* For Recurring Gifts, change the frequency to Monthly if it's set to Single Installment since Single Installment
is the normal default but isn't valid for Recurring Gifts. For Recurring Gifts, the default is Monthly. */
if @TYPECODE = 3 and @INSTALLMENTFREQUENCYCODE = 5
set @INSTALLMENTFREQUENCYCODE = 3;
/* 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;
declare @CREDITCARDID uniqueidentifier
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,
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,
TRANSACTIONID = @TRANSACTIONID,
DECLINESGIFTAID = coalesce(@DECLINESGIFTAID, 0),
DDISOURCECODEID = @DDISOURCECODEID,
DDISOURCEDATE = @DDISOURCEDATE,
ISCOVENANT = @ISCOVENANT,
AMOUNTFORVAT = @AMOUNTFORVAT,
VATTAXRATEID = @VATTAXRATEID,
VATAMOUNT = @VATAMOUNT
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
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,
AMOUNT,
EFFECTIVEDATE,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
(
select
@ID,
RECOGNITIONS.CONSTITUENTID,
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_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)
delete from dbo.BATCHREVENUEAPPLICATIONPLEDGE where ID in (select BATCHREVENUEAPPLICATIONPLEDGEID from BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID);
delete from dbo.BATCHREVENUEAPPLICATIONMEMBERSHIP where ID in (select BATCHREVENUEAPPLICATIONMEMBERSHIPID from BATCHREVENUEAPPLICATION where BATCHREVENUEID = @ID);
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