USP_DATAFORMTEMPLATE_EDITLOAD_2_REVENUEBATCHROW
The load procedure used by the edit dataform template "Revenue Batch Row 2 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. |
@CONSTITUENTID | uniqueidentifier | INOUT | Constituent |
@TYPECODE | tinyint | INOUT | Revenue type |
@DATE | datetime | INOUT | Date |
@AMOUNT | money | INOUT | Amount |
@PAYMENTMETHODCODE | tinyint | INOUT | Payment method |
@DONOTACKNOWLEDGE | bit | INOUT | Do not acknowledge |
@CHECKDATE | UDT_FUZZYDATE | INOUT | Check date |
@CHECKNUMBER | nvarchar(20) | INOUT | Check number |
@REFERENCEDATE | UDT_FUZZYDATE | INOUT | Reference date |
@REFERENCENUMBER | nvarchar(20) | INOUT | Reference number |
@CARDHOLDERNAME | nvarchar(255) | INOUT | Name on card |
@CREDITCARDNUMBER | nvarchar(20) | INOUT | Card number |
@CREDITTYPECODEID | uniqueidentifier | INOUT | Card type |
@AUTHORIZATIONCODE | nvarchar(20) | INOUT | Authorization code |
@EXPIRESON | UDT_FUZZYDATE | INOUT | Expires on |
@ISSUER | nvarchar(100) | INOUT | Issuer |
@NUMBEROFUNITS | decimal(20, 3) | INOUT | Stock number of units |
@SYMBOL | nvarchar(25) | INOUT | Symbol |
@MEDIANPRICE | decimal(19, 4) | INOUT | Median price |
@PROPERTYSUBTYPECODEID | uniqueidentifier | INOUT | Property subtype |
@GIFTINKINDSUBTYPECODEID | uniqueidentifier | INOUT | Gift-in-kind subtype |
@RECEIPTAMOUNT | money | INOUT | Receipt amount |
@DONOTRECEIPT | bit | INOUT | Do not receipt |
@CONSTITUENTACCOUNTID | uniqueidentifier | INOUT | Account |
@SPLITS | xml | INOUT | Designations |
@SINGLEDESIGNATIONID | uniqueidentifier | INOUT | Designation |
@REVENUESTREAMS | xml | INOUT | Revenue streams |
@APPLYTOSHOWNFORCONSTITUENTID | uniqueidentifier | INOUT | Apply to shown for constituent |
@SEQUENCE | int | INOUT | Sequence |
@INSTALLMENTFREQUENCYCODE | tinyint | INOUT | Installment frequency |
@INSTALLMENTSTARTDATE | datetime | INOUT | Installment start date |
@INSTALLMENTENDDATE | datetime | INOUT | Installment end date |
@NUMBEROFINSTALLMENTS | int | INOUT | No. installments |
@SOLICITORS | xml | INOUT | Solicitors |
@BENEFITS | xml | INOUT | Money benefits |
@FINDERNUMBER | bigint | INOUT | Finder number |
@SOURCECODE | nvarchar(60) | INOUT | Source code |
@APPEALID | uniqueidentifier | INOUT | Appeal |
@FINDERNUMBERISVALID | bit | INOUT | Finder number is valid |
@USERMODIFIEDBENEFITS | bit | INOUT | User modified benefits |
@BENEFITSWAIVED | bit | INOUT | User waived benefits |
@POSTDATE | datetime | INOUT | GL post date |
@POSTSTATUSCODE | tinyint | INOUT | GL post status |
@SENDPLEDGEREMINDER | bit | INOUT | Send reminders |
@SALEDATE | datetime | INOUT | Sale date |
@SALEAMOUNT | money | INOUT | Sale amount |
@BROKERFEE | money | INOUT | Sale fees |
@SALEPOSTSTATUSCODE | tinyint | INOUT | Sale GL post status |
@SALEPOSTDATE | datetime | INOUT | Sale GL post date |
@NOTETITLE | nvarchar(50) | INOUT | Note Title |
@NOTEAUTHORID | uniqueidentifier | INOUT | Note Author |
@NOTEDATEENTERED | datetime | INOUT | Note Date |
@NOTETYPECODEID | uniqueidentifier | INOUT | Note Type |
@NOTETEXTNOTE | nvarchar(max) | INOUT | Notes |
@GIFTAMOUNT | nvarchar(100) | INOUT | Gift amount |
@GIVENANONYMOUSLY | bit | INOUT | Given anonymously |
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID | uniqueidentifier | INOUT | Given anonymously defaulted for constituent |
@USERMODIFIEDRECEIPTAMOUNT | bit | INOUT | User modified receipt amount |
@PLEDGESUBTYPEID | uniqueidentifier | INOUT | Pledge subtype |
@REJECTIONCODEID | uniqueidentifier | INOUT | Rejection code |
@CONSTITUENTLOOKUPID | uniqueidentifier | INOUT | Lookup ID |
@MAILINGID | uniqueidentifier | INOUT | Effort |
@CHANNELCODEID | uniqueidentifier | INOUT | Inbound channel |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@INSTALLMENTS | xml | INOUT | Installments |
@PAYMENTFORPLEDGEAMOUNT | money | INOUT | Payment for pledge amount |
@RECOGNITIONS | xml | INOUT | Recognition credits |
@DIDRECOGNITIONSDEFAULT | bit | INOUT | Did default recognition credits |
@TRIBUTES | xml | INOUT | Tributes |
@UNAPPLIEDMATCHINGGIFTSPLITS | xml | INOUT | Unapplied MG Split |
@UNAPPLIEDMATCHINGGIFTAMOUNT | money | INOUT | Applied |
@RECEIPTTYPECODE | tinyint | INOUT | Receipt type |
@NEWCONSTITUENT | xml | INOUT | New constituent |
@OTHERPAYMENTMETHODCODEID | uniqueidentifier | INOUT | Other method |
@LETTERCODEID | uniqueidentifier | INOUT | Letter |
@ACKNOWLEDGEDATE | datetime | INOUT | Acknowledge date |
@REFERENCE | nvarchar(255) | INOUT | Reference |
@CATEGORYCODEID | uniqueidentifier | INOUT | Revenue category |
@ACKNOWLEDGEEID | uniqueidentifier | INOUT | Acknowledgee |
@APPLICATIONINFO | nvarchar(60) | INOUT | Application |
@OTHERTYPECODEID | uniqueidentifier | INOUT | Other type |
@OPPORTUNITYID | uniqueidentifier | INOUT | Opportunity |
@DIRECTDEBITRESULTCODE | nvarchar(10) | INOUT | Result code |
@LOWPRICE | decimal(19, 4) | INOUT | Low price |
@HIGHPRICE | decimal(19, 4) | INOUT | High price |
@NUMBEROFUNITSSOLD | decimal(20, 3) | INOUT | Stock sale number of units |
@USERMODIFIEDNUMBEROFUNITSSOLD | bit | INOUT | User modified stock number of units sold |
@CREDITCARDTOKEN | uniqueidentifier | INOUT | Credit card token |
@REJECTIONMESSAGE | nvarchar(500) | INOUT | Rejection message |
@PARTIALCREDITCARDNUMBER | nvarchar(4) | INOUT | Partial card number |
@ISEXISTINGCONSTITUENT | bit | INOUT | Is existing constituent |
@TAXDECLARATIONS | xml | INOUT | Declarations |
@CONSTITUENTTYPE | tinyint | INOUT | Constituent type |
@STANDINGORDERCONSTITUENTACCOUNTID | uniqueidentifier | INOUT | Standing order account |
@STANDINGORDERREFERENCEDATE | UDT_FUZZYDATE | INOUT | Standing order reference date |
@STANDINGORDERREFERENCENUMBER | nvarchar(18) | INOUT | Standing order reference number |
@STANDINGORDERSETUP | bit | INOUT | Standing order has been setup |
@STANDINGORDERSETUPDATE | datetime | INOUT | Standing order setup date |
@TRANSACTIONID | uniqueidentifier | INOUT | Transaction ID |
@ISTRANSIENTCARD | bit | INOUT | Is transient credit card |
@DECLINESGIFTAID | bit | INOUT | Declines Gift Aid |
@DDISOURCECODEID | uniqueidentifier | INOUT | DDI source |
@DDISOURCEDATE | date | INOUT | DDI source date |
@ISCOVENANT | bit | INOUT | Is covenant gift |
@AMOUNTFORVAT | money | INOUT | Portion subject to VAT |
@VATTAXRATEID | uniqueidentifier | INOUT | VAT tax rate |
@VATAMOUNT | money | INOUT | VAT amount |
@ADDITIONALAPPLICATIONSSTREAM | xml | INOUT | Additional applications stream |
@REVENUELOOKUPID | nvarchar(100) | INOUT | Revenue ID |
@APPLICATIONSOLICITORS | xml | INOUT | Application solicitors |
@APPLICATIONRECOGNITIONS | xml | INOUT | Application recognitions |
@MATCHINGGIFTS | xml | INOUT | |
@MGGENERATED | bit | INOUT | MG Generated |
@MGALTERED | bit | INOUT | MG Altered |
@PAYINGPENDINGREVENUEID | uniqueidentifier | INOUT | Was paying pending revenue |
@GIFTINKINDITEMNAME | nvarchar(100) | INOUT | Item name |
@GIFTINKINDDISPOSITIONCODE | tinyint | INOUT | Disposition |
@GIFTINKINDNUMBEROFUNITS | int | INOUT | Gift-in-kind number of units |
@GIFTINKINDFAIRMARKETVALUE | money | INOUT | Fair market value per unit |
@DIRECTDEBITISREJECTED | bit | INOUT | Direct debit is rejected |
@PERCENTAGEBENEFITS | xml | INOUT | Percent benefits |
@ISGIFTAIDSPONSORSHIP | bit | INOUT | Gift Aid sponsorship |
@OTHERCONSTITUENTAPPLICATIONINFO | nvarchar(60) | INOUT | Other Application |
@LOCKBOXID | uniqueidentifier | INOUT | Lockbox |
@LOCKBOXBATCHNUMBER | nvarchar(100) | INOUT | Lockbox batch number |
@LOCKBOXBATCHSEQUENCE | int | INOUT | Lockbox batch sequence |
@PDACCOUNTSYSTEMID | uniqueidentifier | INOUT | Account system |
@APPLICATIONBUSINESSUNITS | xml | INOUT | Application business units |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Transaction currency |
@BASECURRENCYID | uniqueidentifier | INOUT | Base currency |
@BASEEXCHANGERATEID | uniqueidentifier | INOUT | Base exchange rate |
@EXCHANGERATE | decimal(20, 8) | INOUT | Exchange rate |
@BASEAMOUNT | money | INOUT | Base amount |
@GENERATEREFERENCENUMBER | bit | INOUT | Automatically generate reference number |
@APPLYBYPERCENT | bit | INOUT | Apply by |
@SOURCECODEIMPORT | nvarchar(60) | INOUT | Source code (Import only) |
@CURRENTBATCHROWID | uniqueidentifier | INOUT | BatchRowID |
@MERCHANTACCOUNTID | uniqueidentifier | INOUT | Merchant account |
@SETNULLBASEEXCHANGERATETOLATEST | bit | INOUT | Use latest base exchange rate when not specified |
@APPEALIDFORIMPORT | uniqueidentifier | INOUT | |
@SALE_LOWPRICE | decimal(19, 4) | INOUT | |
@SALE_MEDIANPRICE | decimal(19, 4) | INOUT | |
@SALE_HIGHPRICE | decimal(19, 4) | INOUT | |
@CREDITCARDATTEMPTCOUNT | tinyint | INOUT | |
@VENDORID | nvarchar(50) | INOUT | |
@CLIENTAPPLICENSEID | nvarchar(100) | INOUT | |
@BBNCTRANSACTIONPROCESSORID | uniqueidentifier | INOUT | |
@BBNCORIGINAPPEALID | uniqueidentifier | INOUT | |
@BBNCTRANID | int | INOUT | |
@BBNCID | int | INOUT | |
@BBNCORIGINPAGENAME | nvarchar(100) | INOUT | |
@BBNCORIGINPAGEID | int | INOUT | |
@EDITCONSTITUENTCONTEXT | nvarchar(110) | INOUT | |
@FINANCIALINSTITUTIONID | uniqueidentifier | INOUT | |
@ACCOUNTNUMBER | nvarchar(50) | INOUT | |
@ACCOUNTTYPE | tinyint | INOUT | |
@ACCOUNTNAME | nvarchar(100) | INOUT | |
@RECEIPTNUMBER | nvarchar(30) | INOUT | |
@RECEIPTSTACKSHORTNAME | nvarchar(20) | INOUT | |
@MARKGIFTASRECEIPTED | bit | INOUT | |
@EMAILID | int | INOUT | |
@EMAILNAME | nvarchar(510) | INOUT | |
@EMAILSUBJECT | nvarchar(510) | INOUT | |
@NAMECODE | tinyint | INOUT | |
@SIMILARADDRESSCODE | tinyint | INOUT | |
@UNSIMILARADDRESSCODE | tinyint | INOUT | |
@NEWADDRESSENDDATECODE | tinyint | INOUT | |
@NEWADDRESSPRIMARYCODE | tinyint | INOUT | |
@BIRTHDATERULECODE | tinyint | INOUT | |
@DIFFERENTPHONECODE | tinyint | INOUT | |
@NEWPHONEENDDATECODE | tinyint | INOUT | |
@NEWPHONEPRIMARYCODE | tinyint | INOUT | |
@DIFFERENTEMAILCODE | tinyint | INOUT | |
@NEWEMAILENDDATECODE | tinyint | INOUT | |
@NEWEMAILPRIMARYCODE | tinyint | INOUT | |
@USEGLOBALSETTINGS | bit | INOUT | |
@DOMANUALREVIEWFORAUTOMATCH | bit | INOUT | |
@CREATEHISTORICALNAMECODE | tinyint | INOUT | |
@CONSTITUENTHASEDITS | bit | INOUT | |
@FIRSTPAYMENTPROCESSED | nvarchar(10) | INOUT | |
@PAYMENTFORPLEDGERECEIPTAMOUNT | money | INOUT | |
@SEPAMANDATEID | uniqueidentifier | INOUT | |
@ADDSEPAMANDATE | bit | INOUT | |
@SEPAMANDATECUSTOMIDENTIFIER | nvarchar(35) | INOUT | |
@SEPAMANDATESIGNATUREDATE | date | INOUT | |
@SEPAMANDATETYPECODE | tinyint | INOUT | |
@FINANCIALINSTITUTIONNAME | nvarchar(100) | INOUT | |
@BANKINGSYSTEMID | uniqueidentifier | INOUT | |
@BRANCHNAME | nvarchar(100) | INOUT | |
@ROUTINGNUMBER | nvarchar(9) | INOUT | |
@SORTCODE | nvarchar(6) | INOUT | |
@BIC | nvarchar(11) | INOUT | |
@BANKCODE | nvarchar(25) | INOUT | |
@INSTALLMENTAMOUNT | money | INOUT | |
@REQUIRECREDITCARDPROCESSING | bit | INOUT | |
@NOTEHTMLNOTE | nvarchar(max) | INOUT | |
@ISGIVENANONYMOUSLYMANUALLYCHANGED | bit | INOUT | |
@IMPORT | bit | INOUT | |
@SOLICITCODES | xml | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_2_REVENUEBATCHROW
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@CONSTITUENTID uniqueidentifier = null output,
@TYPECODE tinyint = null output,
@DATE datetime = null output,
@AMOUNT money = null output,
@PAYMENTMETHODCODE tinyint = null output,
@DONOTACKNOWLEDGE bit = null output,
@CHECKDATE dbo.UDT_FUZZYDATE = null output,
@CHECKNUMBER nvarchar(20) = null output,
@REFERENCEDATE dbo.UDT_FUZZYDATE = null output,
@REFERENCENUMBER nvarchar(20) = null output,
@CARDHOLDERNAME nvarchar(255) = null output,
@CREDITCARDNUMBER nvarchar(20) = null output,
@CREDITTYPECODEID uniqueidentifier = null output,
@AUTHORIZATIONCODE nvarchar(20) = null output,
@EXPIRESON dbo.UDT_FUZZYDATE = null output,
@ISSUER nvarchar(100) = null output,
@NUMBEROFUNITS decimal(20,3) = null output,
@SYMBOL nvarchar(25) = null output,
@MEDIANPRICE decimal(19,4) = null output,
@PROPERTYSUBTYPECODEID uniqueidentifier = null output,
@GIFTINKINDSUBTYPECODEID uniqueidentifier = null output,
@RECEIPTAMOUNT money = null output,
@DONOTRECEIPT bit = null output,
@CONSTITUENTACCOUNTID uniqueidentifier = null output,
@SPLITS xml = null output,
@SINGLEDESIGNATIONID uniqueidentifier = null output,
@REVENUESTREAMS xml = null output,
@APPLYTOSHOWNFORCONSTITUENTID uniqueidentifier = null output,
@SEQUENCE int = null output,
@INSTALLMENTFREQUENCYCODE tinyint = null output,
@INSTALLMENTSTARTDATE datetime = null output,
@INSTALLMENTENDDATE datetime = null output,
@NUMBEROFINSTALLMENTS int = null output,
@SOLICITORS xml = null output,
@BENEFITS xml = null output,
@FINDERNUMBER bigint = null output,
@SOURCECODE nvarchar(60) = null output,
@APPEALID uniqueidentifier = null output,
@FINDERNUMBERISVALID bit = null output,
@USERMODIFIEDBENEFITS bit = null output,
@BENEFITSWAIVED bit = null output,
@POSTDATE datetime = null output,
@POSTSTATUSCODE tinyint = null output,
@SENDPLEDGEREMINDER bit = null output,
@SALEDATE datetime = null output,
@SALEAMOUNT money = null output,
@BROKERFEE money = null output,
@SALEPOSTSTATUSCODE tinyint = null output,
@SALEPOSTDATE datetime = null output,
@NOTETITLE nvarchar(50) = null output,
@NOTEAUTHORID uniqueidentifier = null output,
@NOTEDATEENTERED datetime = null output ,
@NOTETYPECODEID uniqueidentifier = null output,
@NOTETEXTNOTE nvarchar(max) = null output,
@GIFTAMOUNT nvarchar(100) = null output,
@GIVENANONYMOUSLY bit = null output,
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID uniqueidentifier = null output,
@USERMODIFIEDRECEIPTAMOUNT bit = null output,
@PLEDGESUBTYPEID uniqueidentifier = null output,
@REJECTIONCODEID uniqueidentifier = null output,
@CONSTITUENTLOOKUPID uniqueidentifier = null output,
@MAILINGID uniqueidentifier = null output,
@CHANNELCODEID uniqueidentifier = null output,
@TSLONG bigint = 0 output,
@INSTALLMENTS xml = null output,
@PAYMENTFORPLEDGEAMOUNT money = null output,
@RECOGNITIONS xml = null output,
@DIDRECOGNITIONSDEFAULT bit = null output,
@TRIBUTES xml = null output,
@UNAPPLIEDMATCHINGGIFTSPLITS xml = null output,
@UNAPPLIEDMATCHINGGIFTAMOUNT money = null output,
@RECEIPTTYPECODE tinyint = null output,
@NEWCONSTITUENT xml = null output,
@OTHERPAYMENTMETHODCODEID uniqueidentifier = null output,
@LETTERCODEID uniqueidentifier = null output,
@ACKNOWLEDGEDATE datetime = null output,
@REFERENCE nvarchar(255) = null output,
@CATEGORYCODEID uniqueidentifier = null output,
@ACKNOWLEDGEEID uniqueidentifier = null output,
@APPLICATIONINFO nvarchar(60) = null output,
@OTHERTYPECODEID uniqueidentifier = null output,
@OPPORTUNITYID uniqueidentifier = null output,
@DIRECTDEBITRESULTCODE nvarchar(10) = null output,
@LOWPRICE decimal(19,4) = null output,
@HIGHPRICE decimal(19,4) = null output,
@NUMBEROFUNITSSOLD decimal(20,3) = null output,
@USERMODIFIEDNUMBEROFUNITSSOLD bit = null output,
@CREDITCARDTOKEN uniqueidentifier = null output,
@REJECTIONMESSAGE nvarchar(500) = null output,
-- PARTIALCREDITCARDNUMBER is used to support import and
-- credit card - last 4 digits recurring gifts
@PARTIALCREDITCARDNUMBER nvarchar(4) = null output,
@ISEXISTINGCONSTITUENT bit = null output,
@TAXDECLARATIONS xml = null output,
@CONSTITUENTTYPE tinyint = null output,
@STANDINGORDERCONSTITUENTACCOUNTID uniqueidentifier = null output,
@STANDINGORDERREFERENCEDATE dbo.UDT_FUZZYDATE = null output,
@STANDINGORDERREFERENCENUMBER nvarchar(18) = null output,
@STANDINGORDERSETUP bit = null output,
@STANDINGORDERSETUPDATE datetime = null output,
@TRANSACTIONID uniqueidentifier = null output,
@ISTRANSIENTCARD bit = null output, -- Isn't set since it's write-only
@DECLINESGIFTAID bit = null output,
@DDISOURCECODEID uniqueidentifier = null output,
@DDISOURCEDATE date = null output,
@ISCOVENANT bit = null output,
@AMOUNTFORVAT money = null output,
@VATTAXRATEID uniqueidentifier = null output,
@VATAMOUNT money = null output,
@ADDITIONALAPPLICATIONSSTREAM xml = null output,
@REVENUELOOKUPID nvarchar(100) = null output,
@APPLICATIONSOLICITORS xml = null output,
@APPLICATIONRECOGNITIONS xml = null output,
@MATCHINGGIFTS xml = null output,
@MGGENERATED bit = null output,
@MGALTERED bit = null output,
@PAYINGPENDINGREVENUEID uniqueidentifier = null output,
@GIFTINKINDITEMNAME nvarchar(100) = null output,
@GIFTINKINDDISPOSITIONCODE tinyint = null output,
@GIFTINKINDNUMBEROFUNITS int = null output,
@GIFTINKINDFAIRMARKETVALUE money = null output,
@DIRECTDEBITISREJECTED bit = null output,
@PERCENTAGEBENEFITS xml = null output,
@ISGIFTAIDSPONSORSHIP bit = null output,
@OTHERCONSTITUENTAPPLICATIONINFO nvarchar(60) = null output,
@LOCKBOXID uniqueidentifier = null output,
@LOCKBOXBATCHNUMBER nvarchar(100) = null output,
@LOCKBOXBATCHSEQUENCE int = null output,
@PDACCOUNTSYSTEMID uniqueidentifier = null output,
@APPLICATIONBUSINESSUNITS xml = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@BASECURRENCYID uniqueidentifier = null output,
@BASEEXCHANGERATEID uniqueidentifier = null output,
@EXCHANGERATE decimal(20,8) = null output,
@BASEAMOUNT money = null output,
@GENERATEREFERENCENUMBER bit = null output,
@APPLYBYPERCENT bit =null output,
@SOURCECODEIMPORT nvarchar(60) = null output,
@CURRENTBATCHROWID uniqueidentifier = null output,
@MERCHANTACCOUNTID uniqueidentifier = null output,
@SETNULLBASEEXCHANGERATETOLATEST bit = null output,
@APPEALIDFORIMPORT uniqueidentifier = null output,
@SALE_LOWPRICE decimal(19,4) = null output,
@SALE_MEDIANPRICE decimal(19,4) = null output,
@SALE_HIGHPRICE decimal(19,4) = null output,
@CREDITCARDATTEMPTCOUNT tinyint = null output,
@VENDORID nvarchar(50) = null output,
@CLIENTAPPLICENSEID nvarchar(100) = null output,
@BBNCTRANSACTIONPROCESSORID uniqueidentifier = null output,
@BBNCORIGINAPPEALID uniqueidentifier = null output,
@BBNCTRANID int = null output,
@BBNCID int = null output,
@BBNCORIGINPAGENAME nvarchar(100) = null output,
@BBNCORIGINPAGEID int = null output,
@EDITCONSTITUENTCONTEXT nvarchar(110) = null output,
@FINANCIALINSTITUTIONID uniqueidentifier = null output,
@ACCOUNTNUMBER nvarchar(50) = null output,
@ACCOUNTTYPE tinyint = null output,
@ACCOUNTNAME nvarchar(100) = null output,
@RECEIPTNUMBER nvarchar(30) = null output,
@RECEIPTSTACKSHORTNAME nvarchar(20) = null output,
@MARKGIFTASRECEIPTED bit = null output,
@EMAILID int = null output,
@EMAILNAME nvarchar(510) = null output,
@EMAILSUBJECT nvarchar(510) = null output,
@NAMECODE tinyint = null output,
@SIMILARADDRESSCODE tinyint = null output,
@UNSIMILARADDRESSCODE tinyint = null output,
@NEWADDRESSENDDATECODE tinyint = null output,
@NEWADDRESSPRIMARYCODE tinyint = null output,
@BIRTHDATERULECODE tinyint = null output,
@DIFFERENTPHONECODE tinyint = null output,
@NEWPHONEENDDATECODE tinyint = null output,
@NEWPHONEPRIMARYCODE tinyint = null output,
@DIFFERENTEMAILCODE tinyint = null output,
@NEWEMAILENDDATECODE tinyint = null output,
@NEWEMAILPRIMARYCODE tinyint = null output,
@USEGLOBALSETTINGS bit = null output,
@DOMANUALREVIEWFORAUTOMATCH bit = null output,
@CREATEHISTORICALNAMECODE tinyint = null output,
@CONSTITUENTHASEDITS bit = null output,
@FIRSTPAYMENTPROCESSED nvarchar(10) = null output,
@PAYMENTFORPLEDGERECEIPTAMOUNT money = null output,
@SEPAMANDATEID uniqueidentifier = null output,
@ADDSEPAMANDATE bit = null output,
@SEPAMANDATECUSTOMIDENTIFIER nvarchar(35) = null output,
@SEPAMANDATESIGNATUREDATE date = null output,
@SEPAMANDATETYPECODE tinyint = null output,
@FINANCIALINSTITUTIONNAME nvarchar(100) = null output,
@BANKINGSYSTEMID uniqueidentifier = null output,
@BRANCHNAME nvarchar(100) = null output,
@ROUTINGNUMBER nvarchar(9) = null output,
@SORTCODE nvarchar(6) = null output,
@BIC nvarchar(11) = null output,
@BANKCODE nvarchar(25) = null output,
@INSTALLMENTAMOUNT money = null output,
@REQUIRECREDITCARDPROCESSING bit = null output,
@NOTEHTMLNOTE nvarchar(max) = null output,
@ISGIVENANONYMOUSLYMANUALLYCHANGED bit = null output,
@IMPORT bit = null output,
@SOLICITCODES xml = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
set @CURRENTBATCHROWID = @ID;
select @DATALOADED = 1,
@CONSTITUENTID = BATCHREVENUE.CONSTITUENTID,
@TYPECODE = BATCHREVENUE.TYPECODE,
@SINGLEDESIGNATIONID = BATCHREVENUE.SINGLEDESIGNATIONID,
@SPLITS = dbo.UFN_REVENUEBATCH_GETSPLITS_TOITEMLISTXML(BATCHREVENUE.ID),
@DATE = BATCHREVENUE.DATE,
@PAYMENTMETHODCODE = BATCHREVENUE.PAYMENTMETHODCODE,
@DONOTACKNOWLEDGE = BATCHREVENUE.DONOTACKNOWLEDGE,
@CHECKDATE = BATCHREVENUE.CHECKDATE,
@CHECKNUMBER = BATCHREVENUE.CHECKNUMBER,
@REFERENCEDATE = BATCHREVENUE.REFERENCEDATE,
@REFERENCENUMBER = BATCHREVENUE.REFERENCENUMBER,
@CARDHOLDERNAME = case when BATCHREVENUE.PAYMENTMETHODCODE = 98 then BATCHREVENUE.CARDHOLDERNAME else CREDITCARD.CARDHOLDERNAME end,
@CREDITCARDNUMBER = CREDITCARD.CREDITCARDPARTIALNUMBER,
@PARTIALCREDITCARDNUMBER = BATCHREVENUE.CREDITCARDPARTIALNUMBER,
@CREDITCARDTOKEN = CREDITCARD.CREDITCARDTOKEN,
@CREDITTYPECODEID = case when BATCHREVENUE.PAYMENTMETHODCODE = 98 then BATCHREVENUE.CREDITTYPECODEID else CREDITCARD.CREDITTYPECODEID end,
@AUTHORIZATIONCODE = BATCHREVENUE.AUTHORIZATIONCODE,
@EXPIRESON = case when BATCHREVENUE.PAYMENTMETHODCODE = 98 then BATCHREVENUE.EXPIRESON else CREDITCARD.EXPIRESON end,
@CONSTITUENTACCOUNTID = BATCHREVENUE.CONSTITUENTACCOUNTID,
@AMOUNT = BATCHREVENUE.AMOUNT,
@RECEIPTAMOUNT = BATCHREVENUE.RECEIPTAMOUNT,
@DONOTRECEIPT = BATCHREVENUE.DONOTRECEIPT,
@REVENUESTREAMS = dbo.UFN_REVENUEBATCH_GETAPPLICATIONSWITHCHILDREN_TOITEMLISTXML(@ID),
@APPLYTOSHOWNFORCONSTITUENTID = BATCHREVENUE.APPLYTOSHOWNFORCONSTITUENTID,
@PROPERTYSUBTYPECODEID = BATCHREVENUE.PROPERTYSUBTYPECODEID,
@GIFTINKINDSUBTYPECODEID = BATCHREVENUE.GIFTINKINDSUBTYPECODEID,
@SEQUENCE = BATCHREVENUE.SEQUENCE,
@INSTALLMENTFREQUENCYCODE = BATCHREVENUE.INSTALLMENTFREQUENCYCODE,
@INSTALLMENTSTARTDATE = case
when BATCHREVENUE.TYPECODE = 1 then coalesce(BATCHREVENUE.INSTALLMENTSTARTDATE, BATCHREVENUE.DATE)
else BATCHREVENUE.INSTALLMENTSTARTDATE
end,
@INSTALLMENTENDDATE = BATCHREVENUE.INSTALLMENTENDDATE,
@NUMBEROFINSTALLMENTS = BATCHREVENUE.NUMBEROFINSTALLMENTS,
@BENEFITS = dbo.UFN_REVENUEBATCH_GETBENEFITS_TOITEMLISTXML(@ID),
@PERCENTAGEBENEFITS = dbo.UFN_REVENUEBATCH_GETBENEFITSPCT_TOITEMLISTXML(@ID),
@FINDERNUMBER = BATCHREVENUE.FINDERNUMBER,
@SOURCECODE = BATCHREVENUE.SOURCECODE,
@APPEALID = BATCHREVENUE.APPEALID,
@FINDERNUMBERISVALID = BATCHREVENUE.FINDERNUMBERISVALID,
@USERMODIFIEDBENEFITS = BATCHREVENUE.USERMODIFIEDBENEFITS,
@BENEFITSWAIVED = BATCHREVENUE.BENEFITSWAIVED,
@POSTDATE = BATCHREVENUE.POSTDATE,
@POSTSTATUSCODE = BATCHREVENUE.POSTSTATUSCODE,
@SENDPLEDGEREMINDER = BATCHREVENUE.SENDPLEDGEREMINDER,
@SALEDATE = BATCHREVENUE.SALEDATE,
@SALEAMOUNT = BATCHREVENUE.SALEAMOUNT,
@BROKERFEE = BATCHREVENUE.BROKERFEE,
@SALEPOSTSTATUSCODE = BATCHREVENUE.SALEPOSTSTATUSCODE,
@SALEPOSTDATE = BATCHREVENUE.SALEPOSTDATE,
@ISSUER = BATCHREVENUE.ISSUER,
@MERCHANTACCOUNTID = BATCHREVENUE.MERCHANTACCOUNTID,
@NUMBEROFUNITS = BATCHREVENUE.NUMBEROFUNITS,
@SYMBOL = BATCHREVENUE.SYMBOL,
@MEDIANPRICE = BATCHREVENUE.MEDIANPRICE,
@NOTETITLE = BATCHREVENUE.NOTETITLE,
@NOTEAUTHORID = BATCHREVENUE.NOTEAUTHORID,
@NOTEDATEENTERED = BATCHREVENUE.NOTEDATEENTERED,
@NOTETYPECODEID = BATCHREVENUE.NOTETYPECODEID,
@NOTETEXTNOTE = BATCHREVENUE.NOTETEXTNOTE,
@GIFTAMOUNT = 0,
@GIVENANONYMOUSLY = BATCHREVENUE.GIVENANONYMOUSLY,
@GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID = BATCHREVENUE.GIVENANONYMOUSLYDEFAULTEDFORCONSTITUENTID,
@USERMODIFIEDRECEIPTAMOUNT = BATCHREVENUE.USERMODIFIEDRECEIPTAMOUNT,
@PLEDGESUBTYPEID = BATCHREVENUE.PLEDGESUBTYPEID,
@REJECTIONMESSAGE = BATCHREVENUE.REJECTIONMESSAGE,
@CONSTITUENTLOOKUPID = BATCHREVENUE.CONSTITUENTID,
@DIDRECOGNITIONSDEFAULT = 1,
@MAILINGID = MAILINGID,
@CHANNELCODEID = CHANNELCODEID,
@INSTALLMENTS = dbo.UFN_REVENUEBATCH_GETINSTALLMENTS_TOITEMLISTXML(@ID),
@PAYMENTFORPLEDGEAMOUNT = PAYMENTFORPLEDGEAMOUNT,
@TSLONG = BATCHREVENUE.TSLONG,
@TRIBUTES = dbo.UFN_REVENUEBATCH_GETTRIBUTES_TOITEMLISTXML(@ID),
@UNAPPLIEDMATCHINGGIFTSPLITS = dbo.UFN_REVENUEBATCH_GETUNAPPLIEDMATCHINGGIFTSPLITS_TOITEMLISTXML(BATCHREVENUE.ID),
@RECEIPTTYPECODE = BATCHREVENUE.RECEIPTTYPECODE,
@OTHERPAYMENTMETHODCODEID = BATCHREVENUE.OTHERPAYMENTMETHODCODEID,
@LETTERCODEID = BATCHREVENUE.LETTERCODEID,
@ACKNOWLEDGEDATE = BATCHREVENUE.ACKNOWLEDGEDATE,
@REFERENCE = BATCHREVENUE.REFERENCE,
@CATEGORYCODEID = BATCHREVENUE.GLREVENUECATEGORYMAPPINGID,
@ACKNOWLEDGEEID = BATCHREVENUE.ACKNOWLEDGEEID,
@APPLICATIONINFO = BATCHREVENUE.APPLICATIONINFO,
@OTHERTYPECODEID = BATCHREVENUE.OTHERTYPECODEID,
@OPPORTUNITYID = BATCHREVENUE.OPPORTUNITYID,
@DIRECTDEBITRESULTCODE = BATCHREVENUE.DIRECTDEBITRESULTCODE,
@LOWPRICE = BATCHREVENUE.LOWPRICE,
@HIGHPRICE = BATCHREVENUE.HIGHPRICE,
@NUMBEROFUNITSSOLD = BATCHREVENUE.NUMBEROFUNITSSOLD,
@USERMODIFIEDNUMBEROFUNITSSOLD = BATCHREVENUE.USERMODIFIEDNUMBEROFUNITSSOLD,
@TAXDECLARATIONS = dbo.UFN_REVENUEBATCH_GETTAXDECLARATIONS_TOITEMLISTXML(BATCHREVENUE.ID),
@STANDINGORDERSETUP = BATCHREVENUE.STANDINGORDERSETUP,
@STANDINGORDERSETUPDATE = BATCHREVENUE.STANDINGORDERSETUPDATE,
@STANDINGORDERREFERENCENUMBER = BATCHREVENUE.STANDINGORDERREFERENCENUMBER,
@GENERATEREFERENCENUMBER = BATCHREVENUE.USESYSTEMGENERATEDREFERENCENUMBER,
@TRANSACTIONID = BATCHREVENUE.TRANSACTIONID,
@ISEXISTINGCONSTITUENT = case
when CONSTITUENT.ID is null
then 0
else 1
end,
@DECLINESGIFTAID = BATCHREVENUE.DECLINESGIFTAID,
@DDISOURCECODEID = DDISOURCECODEID,
@DDISOURCEDATE = DDISOURCEDATE,
@ISCOVENANT = ISCOVENANT,
@AMOUNTFORVAT = AMOUNTFORVAT,
@VATTAXRATEID = VATTAXRATEID,
@VATAMOUNT = VATAMOUNT,
@ADDITIONALAPPLICATIONSSTREAM = dbo.UFN_REVENUEBATCH_GETADDITIONALAPPLICATIONS_TOITEMLISTXML(@ID),
@REVENUELOOKUPID = BATCHREVENUE.REVENUELOOKUPID,
@MATCHINGGIFTS = dbo.UFN_REVENUEBATCH_GETENHANCEDMATCHINGGIFTS_2_TOITEMLISTXML(BATCHREVENUE.ID),
@MGGENERATED = MGGENERATED,
@MGALTERED = MGALTERED,
@PAYINGPENDINGREVENUEID = PAYINGPENDINGREVENUEID,
@GIFTINKINDITEMNAME = GIFTINKINDITEMNAME,
@GIFTINKINDDISPOSITIONCODE = GIFTINKINDDISPOSITIONCODE,
@GIFTINKINDNUMBEROFUNITS = GIFTINKINDNUMBEROFUNITS,
@GIFTINKINDFAIRMARKETVALUE = GIFTINKINDFAIRMARKETVALUE,
@DIRECTDEBITISREJECTED = BATCHREVENUE.DIRECTDEBITISREJECTED,
@ISGIFTAIDSPONSORSHIP = BATCHREVENUE.ISGIFTAIDSPONSORSHIP,
@OTHERCONSTITUENTAPPLICATIONINFO = BATCHREVENUE.APPLICATIONINFO,
@LOCKBOXID = BATCHREVENUE.LOCKBOXID,
@LOCKBOXBATCHNUMBER = BATCHREVENUE.LOCKBOXBATCHNUMBER,
@LOCKBOXBATCHSEQUENCE = BATCHREVENUE.LOCKBOXBATCHSEQUENCE,
@PDACCOUNTSYSTEMID = BATCHREVENUE.PDACCOUNTSYSTEMID,
@TRANSACTIONCURRENCYID = BATCHREVENUE.TRANSACTIONCURRENCYID,
@BASECURRENCYID = BATCHREVENUE.BASECURRENCYID,
@BASEEXCHANGERATEID = BATCHREVENUE.BASEEXCHANGERATEID,
@EXCHANGERATE = BATCHREVENUE.EXCHANGERATE,
@APPLYBYPERCENT = BATCHREVENUE.APPLYBYPERCENT,
@SETNULLBASEEXCHANGERATETOLATEST = 0,
@SALE_LOWPRICE = BATCHREVENUE.SALE_LOWPRICE,
@SALE_MEDIANPRICE = BATCHREVENUE.SALE_MEDIANPRICE,
@SALE_HIGHPRICE = BATCHREVENUE.SALE_HIGHPRICE,
@CREDITCARDATTEMPTCOUNT = BATCHREVENUE.CREDITCARDATTEMPTCOUNT,
@VENDORID = BATCHREVENUE.VENDORID,
@CLIENTAPPLICENSEID = BATCHREVENUE.CLIENTAPPLICENSEID,
@RECEIPTNUMBER = case
when BATCHREVENUE.RECEIPTNUMBER > 0
then CAST(BATCHREVENUE.RECEIPTNUMBER AS NVARCHAR(30))
else ''
end,
@RECEIPTSTACKSHORTNAME = BATCHREVENUE.RECEIPTSTACKSHORTNAME,
@NAMECODE = BATCHREVENUE.NAMECODE,
@SIMILARADDRESSCODE = BATCHREVENUE.SIMILARADDRESSCODE,
@UNSIMILARADDRESSCODE = BATCHREVENUE.UNSIMILARADDRESSCODE,
@NEWADDRESSENDDATECODE = BATCHREVENUE.NEWADDRESSENDDATECODE,
@NEWADDRESSPRIMARYCODE = BATCHREVENUE.NEWADDRESSPRIMARYCODE,
@BIRTHDATERULECODE = BATCHREVENUE.BIRTHDATERULECODE,
@DIFFERENTPHONECODE = BATCHREVENUE.DIFFERENTPHONECODE,
@NEWPHONEENDDATECODE = BATCHREVENUE.NEWPHONEENDDATECODE,
@NEWPHONEPRIMARYCODE = BATCHREVENUE.NEWPHONEPRIMARYCODE,
@DIFFERENTEMAILCODE = BATCHREVENUE.DIFFERENTEMAILCODE,
@NEWEMAILENDDATECODE = BATCHREVENUE.NEWEMAILENDDATECODE,
@NEWEMAILPRIMARYCODE = BATCHREVENUE.NEWEMAILPRIMARYCODE,
@USEGLOBALSETTINGS = BATCHREVENUE.USEGLOBALSETTINGS,
@CREATEHISTORICALNAMECODE = BATCHREVENUE.CREATEHISTORICALNAMECODE,
@EDITCONSTITUENTCONTEXT = cast(BATCHREVENUE.CONSTITUENTID as nvarchar(36)) + '|' +cast(BATCHREVENUE.BATCHID as nvarchar(36)) + '|' + cast(BATCHREVENUE.ID as nvarchar(36)),
@PAYMENTFORPLEDGERECEIPTAMOUNT = BATCHREVENUE.PAYMENTFORPLEDGERECEIPTAMOUNT,
@SEPAMANDATEID = BATCHREVENUE.SEPAMANDATEID,
@INSTALLMENTAMOUNT = BATCHREVENUE.INSTALLMENTAMOUNT,
@REQUIRECREDITCARDPROCESSING = BATCHREVENUE.REQUIRECREDITCARDPROCESSING,
@NOTEHTMLNOTE = BATCHREVENUE.NOTEHTMLNOTE,
@ISGIVENANONYMOUSLYMANUALLYCHANGED = 0,
@IMPORT = 0
from dbo.BATCHREVENUE
left join dbo.CREDITCARD ON BATCHREVENUE.CREDITCARDID = CREDITCARD.ID
left join dbo.CONSTITUENT on CONSTITUENT.ID = BATCHREVENUE.CONSTITUENTID
where BATCHREVENUE.ID = @ID
set @SOLICITCODES = dbo.UFN_BATCHREVENUE_GETCONSTITUENTSOLICITCODES_TOITEMLISTXML(@ID)
select @DOMANUALREVIEWFORAUTOMATCH = DOMANUALREVIEWFORAUTOMATCH
from dbo.BATCHCONSTITUENTUPDATE
where BATCHCONSTITUENTUPDATE.ID = @ID
/*
Begin work synchronizing @SPLITS/@ADDITIONALAPPLICATIONSSTREAM with row fields that should correspond to a single application.
Essentially, if we only have a single application we should not trust that the row values populated were correct as throughout time
we have made changes to essentially deprecate the usage of these fields as an alternative to using the correct collections.
*/
declare @ADDITIONALAPPLICATIONCOUNT int;
declare @SPLITCOUNT int;
select
@ADDITIONALAPPLICATIONCOUNT = (select count(*) from @ADDITIONALAPPLICATIONSSTREAM.nodes('/ADDITIONALAPPLICATIONSSTREAM/ITEM') T(c)),
@SPLITCOUNT = (select count(*) from @SPLITS.nodes('/SPLITS/ITEM') T(c));
declare @SPLITS_DIDCAMPAIGNSDEFAULT bit;
declare @SPLITS_CAMPAIGNS xml;
--If the row is a payment and has exactly one additional application set the single application row fields from that additional application
if @TYPECODE = 0 and @ADDITIONALAPPLICATIONCOUNT = 1
begin
select
@SINGLEDESIGNATIONID = DESIGNATIONID,
@OTHERTYPECODEID = OTHERTYPECODEID,
@DECLINESGIFTAID = DECLINESGIFTAID,
@OPPORTUNITYID = OPPORTUNITYID,
@ISGIFTAIDSPONSORSHIP = ISGIFTAIDSPONSORSHIP,
@CATEGORYCODEID = CATEGORYCODEID
from
dbo.UFN_REVENUEBATCH_GETADDITIONALAPPLICATIONS(@ID);
end
--Otherwise, if the row has exactly one split set the single application row fields from that split. Payments should be included as
-- at one point in time (at least 2.7) we stored single split payments in the BATCHREVENUESPLIT table.
--In the case when we are transferring @SPLITS to @ADDITIONALAPPLICATIONSSTREAM we also need to pull the associated campaigns.
else if @SPLITCOUNT = 1
begin
select
@SINGLEDESIGNATIONID = DESIGNATIONID,
@DECLINESGIFTAID = DECLINESGIFTAID,
@ISGIFTAIDSPONSORSHIP = ISGIFTAIDSPONSORSHIP,
@SPLITS_DIDCAMPAIGNSDEFAULT = DIDCAMPAIGNSDEFAULT,
@SPLITS_CAMPAIGNS = CAMPAIGNS
from
dbo.UFN_REVENUEBATCH_GETSPLITS(@ID);
end
-- Sync the additional applications collection with the single application info field
if @TYPECODE = 0 and len(@APPLICATIONINFO) = 3 and @ADDITIONALAPPLICATIONCOUNT = 0
begin
declare @APPTYPE integer = convert(integer, substring(@APPLICATIONINFO, 3, 1));
set @ADDITIONALAPPLICATIONSSTREAM =
(
select
ID,
TYPECODE,
APPLIED,
DESIGNATIONID,
OTHERTYPECODEID,
DECLINESGIFTAID,
OPPORTUNITYID,
ISGIFTAIDSPONSORSHIP,
CATEGORYCODEID,
DIDCAMPAIGNSDEFAULT,
CAMPAIGNS
from
(
select
newid() ID,
@APPTYPE TYPECODE,
@AMOUNT APPLIED,
@SINGLEDESIGNATIONID DESIGNATIONID,
@OTHERTYPECODEID OTHERTYPECODEID,
coalesce(@DECLINESGIFTAID, 0) DECLINESGIFTAID,
@OPPORTUNITYID OPPORTUNITYID,
coalesce(@ISGIFTAIDSPONSORSHIP, 0) ISGIFTAIDSPONSORSHIP,
@CATEGORYCODEID CATEGORYCODEID,
coalesce(@SPLITS_DIDCAMPAIGNSDEFAULT, 1) as DIDCAMPAIGNSDEFAULT,
@SPLITS_CAMPAIGNS as CAMPAIGNS
) ADDITIONALAPPLICATION
for xml raw('ITEM'), type, elements, root('ADDITIONALAPPLICATIONSSTREAM'), binary base64
);
if @SINGLEDESIGNATIONID is not null
exec USP_REVENUEBATCH_ADDITIONALAPPLICATIONWITHCHILDREN_UPDATEFROMXML @ID, @ADDITIONALAPPLICATIONSSTREAM, @DATE;
end
/*
End @SPLITS/@ADDITIONALAPPLICATIONSSTREAM synchronization
*/
if @PAYMENTMETHODCODE = 255
set @PAYMENTMETHODCODE = null;
if @PAYMENTMETHODCODE = 11 --Standing order
begin
set @STANDINGORDERCONSTITUENTACCOUNTID = @CONSTITUENTACCOUNTID;
set @STANDINGORDERREFERENCEDATE = @REFERENCEDATE;
end
if @FINDERNUMBER = 0
set @FINDERNUMBER = null;
/* JamesWill CR267402-021907 INSTALLMENTFREQUENCYCODE cannot be null in the database, but it can be null in the defaults */
if @INSTALLMENTFREQUENCYCODE = 255
set @INSTALLMENTFREQUENCYCODE = null;
/* JamesWill CR265838-020507 2007/03/07 */
if @POSTSTATUSCODE = 255
set @POSTSTATUSCODE = null;
if @SALEPOSTSTATUSCODE = 255
set @SALEPOSTSTATUSCODE = null;
if @RECEIPTTYPECODE = 255
set @RECEIPTTYPECODE = null;
--Set default values for SEPA mandate fields only used in import
set @ADDSEPAMANDATE = 0;
set @SEPAMANDATECUSTOMIDENTIFIER = '';
set @SEPAMANDATESIGNATUREDATE = null;
set @SEPAMANDATETYPECODE = 0;
-- Determine the constituent type
declare @ISORGANIZATION bit, @ISGROUP bit, @ISHOUSEHOLD bit
select
@ISORGANIZATION = CONSTITUENT.ISORGANIZATION,
@ISGROUP = CONSTITUENT.ISGROUP,
@ISHOUSEHOLD = case
when ISGROUP = 1 and GROUPDATA.GROUPTYPECODE = 0
then 1
else 0
end
from dbo.CONSTITUENT
left join dbo.GROUPDATA on CONSTITUENT.ID = GROUPDATA.ID
where CONSTITUENT.ID = @CONSTITUENTID
-- If the fields weren't set, then the constituent must be a batch constituent
if @ISORGANIZATION is null
select
@ISORGANIZATION = BATCHREVENUECONSTITUENT.ISORGANIZATION,
@ISGROUP = BATCHREVENUECONSTITUENT.ISGROUP,
@ISHOUSEHOLD = case
when ISGROUP = 1 and GROUPDATA.GROUPTYPECODE = 0
then 1
else 0
end
from dbo.BATCHREVENUECONSTITUENT
left join dbo.GROUPDATA on BATCHREVENUECONSTITUENT.ID = GROUPDATA.ID
where BATCHREVENUECONSTITUENT.ID = @CONSTITUENTID
if @ISORGANIZATION = 0 and @ISGROUP = 0
set @CONSTITUENTTYPE = 0 -- Individual
else
begin
if @ISORGANIZATION = 1
set @CONSTITUENTTYPE = 1 -- Org
else
begin
if @ISHOUSEHOLD = 1
set @CONSTITUENTTYPE = 2 -- Household
else
set @CONSTITUENTTYPE = 3 -- Group
end
end
-- Set recognitions collection if there are no additional applications OR the row is a payment and has exactly one additional application
set @RECOGNITIONS = (
select
AMOUNT,
CONSTITUENTID,
EFFECTIVEDATE,
BATCHREVENUERECOGNITION.ID,
REVENUERECOGNITIONTYPECODE.DESCRIPTION as RECOGNITIONTYPE,
REVENUERECOGNITIONTYPECODEID
from dbo.BATCHREVENUERECOGNITION
left join dbo.REVENUERECOGNITIONTYPECODE on BATCHREVENUERECOGNITION.REVENUERECOGNITIONTYPECODEID = REVENUERECOGNITIONTYPECODE.ID
where BATCHREVENUEID = @ID
and (ADDITIONALAPPLICATIONTYPECODE is null or ADDITIONALAPPLICATIONTYPECODE = 255 or (@TYPECODE = 0 and @ADDITIONALAPPLICATIONCOUNT = 1))
order by BATCHREVENUERECOGNITION.EFFECTIVEDATE
for xml raw('ITEM'),type,elements,root('RECOGNITIONS'),BINARY BASE64
)
-- Do the same for solicitors (set if no additional applications OR the row is a payment and has exactly one additional application)
set @SOLICITORS = (
select
AMOUNT,
CONSTITUENTID,
ID,
SEQUENCE
from dbo.BATCHREVENUESOLICITOR
where BATCHREVENUEID = @ID
and (ADDITIONALAPPLICATIONTYPECODE is null or ADDITIONALAPPLICATIONTYPECODE = 255 or (@TYPECODE = 0 and @ADDITIONALAPPLICATIONCOUNT = 1))
for xml raw('ITEM'),type,elements,root('SOLICITORS'),BINARY BASE64
)
declare @APPLICATIONCODE tinyint;
if @APPLICATIONINFO is not null
begin
if len(@APPLICATIONINFO) > 0
begin
if len(@APPLICATIONINFO) = 3
begin
set @APPLICATIONCODE = cast(substring(@APPLICATIONINFO, 3, 1) as tinyint);
end
else if len(@APPLICATIONINFO) >= 39
begin
--Bug 133370 - AdamBu - 1/10/11 - Replace the balance in the APPLICATIONINFO fields with the current balance.
-- This will ensure that the value passed out of the dataform matches the value that will be used in the
-- simple list.
declare @SINGLEAPPLICATIONID uniqueidentifier
declare @APPLICATIONTYPECODE tinyint
select
@SINGLEAPPLICATIONID = SINGLEAPPLICATIONID,
@APPLICATIONTYPECODE = APPLICATIONTYPECODE
from dbo.UFN_REVENUEBATCH_PARSEAPPLICATIONINFO(@APPLICATIONINFO)
--All other commitment types include amount in APPLICATIONINFO, not balance, so we don't need to worry
--about updating them.
if @APPLICATIONTYPECODE in (3,5,6,7,8,9,10)
begin
set @APPLICATIONINFO = convert(nvarchar(36), @SINGLEAPPLICATIONID)
+ ':' + convert(nvarchar(2),@APPLICATIONTYPECODE)
+ ':' + case
when @APPLICATIONTYPECODE in (3,5,6,8,9,10)
then coalesce(
(
select convert(nvarchar(20),dbo.UFN_INSTALLMENT_GETINSTALLMENTBALANCE(INSTALLMENT.ID))
from dbo.REVENUE
cross apply dbo.UFN_CONSTITUENT_DISPLAYNAME(REVENUE.CONSTITUENTID) CONSTITUENT_NF
inner join dbo.INSTALLMENT on INSTALLMENT.REVENUEID = REVENUE.ID and INSTALLMENT.ID = dbo.UFN_REVENUE_GETNEXTINSTALLMENT(REVENUE.ID)
where REVENUE.ID = @SINGLEAPPLICATIONID
),
'0.00'
)
when @APPLICATIONTYPECODE = 7
then convert(nvarchar(20),dbo.UFN_EVENTREGISTRANT_GETBALANCE(@SINGLEAPPLICATIONID))
end
set @OTHERCONSTITUENTAPPLICATIONINFO = @APPLICATIONINFO
end
end
end
end
declare @USESPLITS bit;
if @APPLICATIONCODE is not null and @SPLITCOUNT > 1
set @USESPLITS = 1
else
set @USESPLITS = 0
set @APPLICATIONRECOGNITIONS = dbo.UFN_REVENUEBATCH_GETAPPLICATIONRECOGNITIONS(@ID, @USESPLITS)
set @APPLICATIONSOLICITORS = dbo.UFN_REVENUEBATCH_GETAPPLICATIONSOLICITORS(@ID, @USESPLITS)
/* Load business units */
declare @APPORSPLIT bit =0;
if @SPLITCOUNT>1
set @APPORSPLIT=1
else
set @APPORSPLIT=0
set @APPLICATIONBUSINESSUNITS = dbo.UFN_REVENUEBATCH_GETAPPLICATIONBUSINESSUNITS(@ID,@APPORSPLIT)
set @SOURCECODEIMPORT = @SOURCECODE;
/* Load BBIS transaction information */
select
@BBNCTRANID = BBNCTRANID,
@BBNCID = BBNCID,
@BBNCTRANSACTIONPROCESSORID = NETCOMMUNITYTRANSACTIONPROCESSORID,
@BBNCORIGINAPPEALID = ORIGINAPPEALID,
@BBNCORIGINPAGENAME = PAGENAME,
@BBNCORIGINPAGEID = PAGEID,
@MARKGIFTASRECEIPTED = MARKGIFTASRECEIPTED,
@EMAILID = EMAILID,
@EMAILNAME = EMAILNAME,
@EMAILSUBJECT = EMAILSUBJECT,
@FIRSTPAYMENTPROCESSED = FIRSTPAYMENTPROCESSED
from
dbo.BATCHREVENUEBBNCINFO
where
BATCHREVENUEID = @ID;
-- return this true if the selected constituent has edits
select @CONSTITUENTHASEDITS = 1 from dbo.BATCHCONSTITUENTUPDATE where ID= @ID and PRIMARYRECORDID = @CONSTITUENTID
return 0;