USP_DATAFORMTEMPLATE_VIEW_RECURRINGGIFTACTIVITYDETAIL
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(47) | IN | |
@DATALOADED | bit | INOUT | |
@INSTALLMENTACTIVITY | xml | INOUT | |
@AMENDMENTTYPECODE | tinyint | INOUT | |
@PREVIOUSTRANSACTIONAMOUNT | money | INOUT | |
@TRANSACTIONAMOUNT | money | INOUT | |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | |
@PREVIOUSFREQUENCYCODE | tinyint | INOUT | |
@FREQUENCYCODE | tinyint | INOUT | |
@DESIGNATIONS | xml | INOUT | |
@SOURCECODE | nvarchar(50) | INOUT | |
@FINDERNUMBER | nvarchar(19) | INOUT | |
@APPEAL | nvarchar(100) | INOUT | |
@MAILING | nvarchar(100) | INOUT | |
@CHANNEL | nvarchar(100) | INOUT | |
@PREVIOUSPAYMENTMETHODCODE | tinyint | INOUT | |
@PAYMENTMETHODCODE | tinyint | INOUT | |
@PREVIOUSCREDITTYPE | nvarchar(100) | INOUT | |
@CREDITTYPE | nvarchar(100) | INOUT | |
@PREVIOUSCREDITCARDPARTIALNUMBER | nvarchar(4) | INOUT | |
@CREDITCARDPARTIALNUMBER | nvarchar(4) | INOUT | |
@PREVIOUSEXPIRESON | UDT_FUZZYDATE | INOUT | |
@EXPIRESON | UDT_FUZZYDATE | INOUT | |
@PREVIOUSFINANCIALINSTITUTION | nvarchar(100) | INOUT | |
@FINANCIALINSTITUTION | nvarchar(100) | INOUT | |
@PREVIOUSCONSTITUENTACCOUNTPARTIALNUMBER | nvarchar(4) | INOUT | |
@CONSTITUENTACCOUNTPARTIALNUMBER | nvarchar(4) | INOUT | |
@PREVIOUSREFERENCEDATE | UDT_FUZZYDATE | INOUT | |
@REFERENCEDATE | UDT_FUZZYDATE | INOUT | |
@PREVIOUSREFERENCENUMBER | nvarchar(20) | INOUT | |
@REFERENCENUMBER | nvarchar(20) | INOUT | |
@OLDCONSTITUENT | nvarchar(154) | INOUT | |
@NEWCONSTITUENT | nvarchar(154) | INOUT | |
@OLDCONSTITUENTLOOKUPID | nvarchar(36) | INOUT | |
@NEWCONSTITUENTLOOKUPID | nvarchar(36) | INOUT | |
@NEXTTRANSACTIONDATE | date | INOUT | |
@PREVIOUSNEXTTRANSACTIONDATE | date | INOUT | |
@STATUSCODE | tinyint | INOUT | |
@PREVIOUSSTATUSCODE | tinyint | INOUT | |
@OTHERPAYMENTMETHODCODEID | uniqueidentifier | INOUT | |
@PREVIOUSOTHERPAYMENTMETHODCODEID | uniqueidentifier | INOUT | |
@PREVIOUSCARDHOLDERNAME | nvarchar(255) | INOUT | |
@CARDHOLDERNAME | nvarchar(255) | INOUT | |
@REVENUEDEVELOPMENTFUNCTION | nvarchar(200) | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@DDISOURCECODEID | uniqueidentifier | INOUT | |
@PREVIOUSDDISOURCECODEID | uniqueidentifier | INOUT | |
@DDISOURCEDATE | date | INOUT | |
@PREVIOUSDDISOURCEDATE | date | INOUT | |
@SENDPMINSTRUCTION | bit | INOUT | |
@PREVIOUSSENDPMINSTRUCTION | bit | INOUT | |
@PMINSTRUCTIONTOSENDCODE | tinyint | INOUT | |
@PREVIOUSPMINSTRUCTIONTOSENDCODE | tinyint | INOUT | |
@PMINSTRUCTIONDATE_NEW | date | INOUT | |
@PREVIOUSPMINSTRUCTIONDATE_NEW | date | INOUT | |
@PMINSTRUCTIONDATE_CANCEL | date | INOUT | |
@PREVIOUSPMINSTRUCTIONDATE_CANCEL | date | INOUT | |
@PMINSTRUCTIONDATE_SETUP | date | INOUT | |
@PREVIOUSPMINSTRUCTIONDATE_SETUP | date | INOUT | |
@PMADVANCENOTICESENTDATE | date | INOUT | |
@PREVIOUSPMADVANCENOTICESENTDATE | date | INOUT | |
@SEPAMANDATEID | uniqueidentifier | INOUT | |
@PREVIOUSSEPAMANDATEID | uniqueidentifier | INOUT | |
@STANDINGORDERSETUP | bit | INOUT | |
@PREVIOUSSTANDINGORDERSETUP | bit | INOUT | |
@STANDINGORDERSETUPDATE | date | INOUT | |
@PREVIOUSSTANDINGORDERSETUPDATE | date | INOUT | |
@USESYSTEMGENERATEDREFERENCENUMBER | bit | INOUT | |
@PREVIOUSUSESYSTEMGENERATEDREFERENCENUMBER | bit | INOUT | |
@CONSTITUENTACCOUNTID | uniqueidentifier | INOUT | |
@PREVIOUSCONSTITUENTACCOUNTID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_RECURRINGGIFTACTIVITYDETAIL (
@ID nvarchar(47),
@DATALOADED bit = 0 output,
@INSTALLMENTACTIVITY xml = null output,
@AMENDMENTTYPECODE tinyint = null output,
@PREVIOUSTRANSACTIONAMOUNT money = null output,
@TRANSACTIONAMOUNT money = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@PREVIOUSFREQUENCYCODE tinyint = null output,
@FREQUENCYCODE tinyint = null output,
@DESIGNATIONS xml = null output,
@SOURCECODE nvarchar(50) = null output,
@FINDERNUMBER nvarchar(19) = null output,
@APPEAL nvarchar(100) = null output,
@MAILING nvarchar(100) = null output,
@CHANNEL nvarchar(100) = null output,
@PREVIOUSPAYMENTMETHODCODE tinyint = null output,
@PAYMENTMETHODCODE tinyint = null output,
@PREVIOUSCREDITTYPE nvarchar(100) = null output,
@CREDITTYPE nvarchar(100) = null output,
@PREVIOUSCREDITCARDPARTIALNUMBER nvarchar(4) = null output,
@CREDITCARDPARTIALNUMBER nvarchar(4) = null output,
@PREVIOUSEXPIRESON dbo.UDT_FUZZYDATE = null output,
@EXPIRESON dbo.UDT_FUZZYDATE = null output,
@PREVIOUSFINANCIALINSTITUTION nvarchar(100) = null output,
@FINANCIALINSTITUTION nvarchar(100) = null output,
@PREVIOUSCONSTITUENTACCOUNTPARTIALNUMBER nvarchar(4) = null output,
@CONSTITUENTACCOUNTPARTIALNUMBER nvarchar(4) = null output,
@PREVIOUSREFERENCEDATE dbo.UDT_FUZZYDATE = null output,
@REFERENCEDATE dbo.UDT_FUZZYDATE = null output,
@PREVIOUSREFERENCENUMBER nvarchar(20) = null output,
@REFERENCENUMBER nvarchar(20) = null output,
@OLDCONSTITUENT nvarchar(154) = null output,
@NEWCONSTITUENT nvarchar(154) = null output,
@OLDCONSTITUENTLOOKUPID nvarchar(36) = null output,
@NEWCONSTITUENTLOOKUPID nvarchar(36) = null output,
@NEXTTRANSACTIONDATE date = null output,
@PREVIOUSNEXTTRANSACTIONDATE date = null output,
@STATUSCODE tinyint = null output,
@PREVIOUSSTATUSCODE tinyint = null output,
@OTHERPAYMENTMETHODCODEID uniqueidentifier = null output,
@PREVIOUSOTHERPAYMENTMETHODCODEID uniqueidentifier = null output,
@PREVIOUSCARDHOLDERNAME nvarchar(255) = null output,
@CARDHOLDERNAME nvarchar(255) = null output,
@REVENUEDEVELOPMENTFUNCTION nvarchar(200) = null output,
@CURRENTAPPUSERID uniqueidentifier = null,
@DDISOURCECODEID uniqueidentifier = null output,
@PREVIOUSDDISOURCECODEID uniqueidentifier = null output,
@DDISOURCEDATE date = null output,
@PREVIOUSDDISOURCEDATE date = null output,
@SENDPMINSTRUCTION bit = null output,
@PREVIOUSSENDPMINSTRUCTION bit = null output,
@PMINSTRUCTIONTOSENDCODE tinyint = null output,
@PREVIOUSPMINSTRUCTIONTOSENDCODE tinyint = null output,
@PMINSTRUCTIONDATE_NEW date = null output,
@PREVIOUSPMINSTRUCTIONDATE_NEW date = null output,
@PMINSTRUCTIONDATE_CANCEL date = null output,
@PREVIOUSPMINSTRUCTIONDATE_CANCEL date = null output,
@PMINSTRUCTIONDATE_SETUP date = null output,
@PREVIOUSPMINSTRUCTIONDATE_SETUP date = null output,
@PMADVANCENOTICESENTDATE date = null output,
@PREVIOUSPMADVANCENOTICESENTDATE date = null output,
@SEPAMANDATEID uniqueidentifier = null output,
@PREVIOUSSEPAMANDATEID uniqueidentifier = null output,
@STANDINGORDERSETUP bit = null output,
@PREVIOUSSTANDINGORDERSETUP bit = null output,
@STANDINGORDERSETUPDATE date = null output,
@PREVIOUSSTANDINGORDERSETUPDATE date = null output,
@USESYSTEMGENERATEDREFERENCENUMBER bit = null output,
@PREVIOUSUSESYSTEMGENERATEDREFERENCENUMBER bit = null output,
@CONSTITUENTACCOUNTID uniqueidentifier = null output,
@PREVIOUSCONSTITUENTACCOUNTID uniqueidentifier = null output
)
as
set nocount on;
set @DATALOADED = 0;
declare @RECORDTYPE nvarchar(1) = substring(@ID,1,1);
declare @RECORDID uniqueidentifier = cast(substring(@ID,3,36) as uniqueidentifier);
--check on permission to view payment details
declare @USER_GRANTED_PAYMENTINFORMATION_VIEW bit
if dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1
set @USER_GRANTED_PAYMENTINFORMATION_VIEW = 1;
else
set @USER_GRANTED_PAYMENTINFORMATION_VIEW = dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_SYSTEMROLE(@CURRENTAPPUSERID,'bafca6f5-4cdb-4173-aece-113713d38bfb');
if @RECORDTYPE in('I','M')
begin
if @RECORDTYPE = 'I'
begin
set @INSTALLMENTACTIVITY = dbo.UFN_RECURRINGGIFTINSTALLMENTACTIVITY_TOITEMLISTXML(@RECORDID);
if @INSTALLMENTACTIVITY is not null
set @DATALOADED = 1;
--check for zero dollar installments
if @DATALOADED = 0
begin
select @DATALOADED = 1
from dbo.RECURRINGGIFTINSTALLMENT
where ID = cast(substring(@ID,3,36) as uniqueidentifier)
and AMOUNT = 0;
set @INSTALLMENTACTIVITY = '<INSTALLMENTACTIVITY><ITEM><ACTIVITY>ZERODOLLAR</ACTIVITY></ITEM></INSTALLMENTACTIVITY>'
end
end
else
begin
set @INSTALLMENTACTIVITY =
(select convert(date,substring(@ID,40,8),112) DATE,
'Expected' ACTIVITY,
0 AMOUNT,
TRANSACTIONAMOUNT BALANCE,
null DETAILS,
TRANSACTIONCURRENCYID CURRENCYID,
null DATEADDED,
null ID,
0 TYPECODE
from dbo.FINANCIALTRANSACTION
where ID = @RECORDID
for xml path('ITEM'),type,elements,root('INSTALLMENTACTIVITY'),BINARY BASE64);
if @INSTALLMENTACTIVITY is not null
set @DATALOADED = 1;
end
end
else
begin
exec dbo.USP_GET_KEY_ACCESS;
select @DATALOADED = 1,
@AMENDMENTTYPECODE = a.AMENDMENTTYPECODE,
@PREVIOUSTRANSACTIONAMOUNT = a.PREVIOUSTRANSACTIONAMOUNT,
@TRANSACTIONAMOUNT = a.TRANSACTIONAMOUNT,
@TRANSACTIONCURRENCYID = f.TRANSACTIONCURRENCYID,
@PREVIOUSFREQUENCYCODE = a.PREVIOUSFREQUENCYCODE,
@FREQUENCYCODE = a.FREQUENCYCODE,
@DESIGNATIONS = (
select T.c.value('(ID)[1]', 'uniqueidentifier') as [ID],
dbo.UFN_DESIGNATION_BUILDNAME(T.c.value('(ID)[1]', 'uniqueidentifier')) as [DESIGNATION],
T.c.value('(OLDAMOUNT)[1]', 'money') as [OLDAMOUNT],
T.c.value('(NEWAMOUNT)[1]', 'money') as [NEWAMOUNT],
T.c.value('(TRANSACTIONCURRENCYID)[1]', 'uniqueidentifier') as [TRANSACTIONCURRENCYID]
from a.DESIGNATIONS.nodes('/DESIGNATIONS/ITEM') as T(c)
for xml raw('ITEM'),
type,
elements,
root('DESIGNATIONS'),
binary BASE64
),
@SOURCECODE = a.SOURCECODE,
@FINDERNUMBER = nullif(a.FINDERNUMBER, 0),
@APPEAL = APPEAL.name,
@MAILING = MKTSEGMENTATION.name,
@CHANNEL = CHANNELCODE.DESCRIPTION,
@PREVIOUSPAYMENTMETHODCODE = case
when @USER_GRANTED_PAYMENTINFORMATION_VIEW = 0 then 99
else a.PREVIOUSPAYMENTMETHODCODE
end,
@PAYMENTMETHODCODE = case
when @USER_GRANTED_PAYMENTINFORMATION_VIEW = 0 then 99
else a.PAYMENTMETHODCODE
end,
@PREVIOUSCREDITTYPE = pct.DESCRIPTION,
@CREDITTYPE = ct.DESCRIPTION,
@PREVIOUSCREDITCARDPARTIALNUMBER = a.PREVIOUSCREDITCARDPARTIALNUMBER,
@CREDITCARDPARTIALNUMBER = a.CREDITCARDPARTIALNUMBER,
@PREVIOUSEXPIRESON = a.PREVIOUSEXPIRESON,
@EXPIRESON = a.EXPIRESON,
@PREVIOUSCARDHOLDERNAME = a.PREVIOUSCARDHOLDERNAME,
@CARDHOLDERNAME = a.CARDHOLDERNAME,
@PREVIOUSFINANCIALINSTITUTION = pfi.DESCRIPTION,
@FINANCIALINSTITUTION = fi.DESCRIPTION,
@PREVIOUSCONSTITUENTACCOUNTPARTIALNUMBER = right(convert(nvarchar(50), DecryptByKey(pca.ACCOUNTNUMBER)), 4),
@CONSTITUENTACCOUNTPARTIALNUMBER = right(convert(nvarchar(50), DecryptByKey(ca.ACCOUNTNUMBER)), 4),
@PREVIOUSREFERENCEDATE = a.PREVIOUSREFERENCEDATE,
@REFERENCEDATE = a.REFERENCEDATE,
@PREVIOUSREFERENCENUMBER = a.PREVIOUSREFERENCENUMBER,
@REFERENCENUMBER = a.REFERENCENUMBER,
@OLDCONSTITUENT = isnull(c2.NAME, 'Former gift owner'),
@NEWCONSTITUENT = isnull(c1.NAME, 'Former gift owner'),
@OLDCONSTITUENTLOOKUPID = c2.LOOKUPID,
@NEWCONSTITUENTLOOKUPID = c1.LOOKUPID,
@PREVIOUSNEXTTRANSACTIONDATE = a.PREVIOUSNEXTTRANSACTIONDATE,
@NEXTTRANSACTIONDATE = a.NEXTTRANSACTIONDATE,
@STATUSCODE = a.STATUSCODE,
@PREVIOUSSTATUSCODE = a.PREVIOUSSTATUSCODE,
@OTHERPAYMENTMETHODCODEID = a.OTHERPAYMENTMETHODCODEID,
@PREVIOUSOTHERPAYMENTMETHODCODEID = a.PREVIOUSOTHERPAYMENTMETHODCODEID,
@REVENUEDEVELOPMENTFUNCTION = rdfc.DESCRIPTION,
@DDISOURCECODEID = a.DDISOURCECODEID,
@PREVIOUSDDISOURCECODEID = a.PREVIOUSDDISOURCECODEID,
@DDISOURCEDATE = a.DDISOURCEDATE,
@PREVIOUSDDISOURCEDATE = a.PREVIOUSDDISOURCEDATE,
@SENDPMINSTRUCTION = a.SENDPMINSTRUCTION,
@PREVIOUSSENDPMINSTRUCTION = a.PREVIOUSSENDPMINSTRUCTION,
@PMINSTRUCTIONTOSENDCODE = a.PMINSTRUCTIONTOSENDCODE,
@PREVIOUSPMINSTRUCTIONTOSENDCODE = a.PREVIOUSPMINSTRUCTIONTOSENDCODE,
@PMINSTRUCTIONDATE_NEW = a.PMINSTRUCTIONDATE_NEW,
@PREVIOUSPMINSTRUCTIONDATE_NEW = a.PREVIOUSPMINSTRUCTIONDATE_NEW,
@PMINSTRUCTIONDATE_CANCEL = a.PMINSTRUCTIONDATE_CANCEL,
@PREVIOUSPMINSTRUCTIONDATE_CANCEL = a.PREVIOUSPMINSTRUCTIONDATE_CANCEL,
@PMINSTRUCTIONDATE_SETUP = a.PMINSTRUCTIONDATE_SETUP,
@PREVIOUSPMINSTRUCTIONDATE_SETUP = a.PREVIOUSPMINSTRUCTIONDATE_SETUP,
@PMADVANCENOTICESENTDATE = a.PMADVANCENOTICESENTDATE,
@PREVIOUSPMADVANCENOTICESENTDATE = a.PREVIOUSPMADVANCENOTICESENTDATE,
@SEPAMANDATEID = a.SEPAMANDATEID,
@PREVIOUSSEPAMANDATEID = a.PREVIOUSSEPAMANDATEID,
@STANDINGORDERSETUP = a.STANDINGORDERSETUP,
@PREVIOUSSTANDINGORDERSETUP = a.PREVIOUSSTANDINGORDERSETUP,
@STANDINGORDERSETUPDATE = a.STANDINGORDERSETUPDATE,
@PREVIOUSSTANDINGORDERSETUPDATE = a.PREVIOUSSTANDINGORDERSETUPDATE,
@USESYSTEMGENERATEDREFERENCENUMBER = a.USESYSTEMGENERATEDREFERENCENUMBER,
@PREVIOUSUSESYSTEMGENERATEDREFERENCENUMBER = a.PREVIOUSUSESYSTEMGENERATEDREFERENCENUMBER,
@CONSTITUENTACCOUNTID = a.CONSTITUENTACCOUNTID,
@PREVIOUSCONSTITUENTACCOUNTID = a.PREVIOUSCONSTITUENTACCOUNTID
from dbo.RECURRINGGIFTAMENDMENT a
left join dbo.APPEAL on APPEAL.ID = a.APPEALID
left join dbo.MKTSEGMENTATION on MKTSEGMENTATION.ID = a.MAILINGID
left join dbo.CHANNELCODE on CHANNELCODE.ID = a.CHANNELCODEID
left join dbo.CREDITTYPECODE pct on pct.ID = a.PREVIOUSCREDITTYPECODEID
left join dbo.CREDITTYPECODE ct on ct.ID = a.CREDITTYPECODEID
left join dbo.CONSTITUENTACCOUNT pca on pca.ID = a.PREVIOUSCONSTITUENTACCOUNTID
left join dbo.FINANCIALINSTITUTION pfi on pfi.ID = pca.FINANCIALINSTITUTIONID
left join dbo.CONSTITUENTACCOUNT ca on ca.ID = a.CONSTITUENTACCOUNTID
left join dbo.FINANCIALINSTITUTION fi on fi.ID = ca.FINANCIALINSTITUTIONID
left join dbo.CONSTITUENT c1 on c1.ID = a.CONSTITUENTID
left join dbo.CONSTITUENT c2 on c2.ID = a.PREVIOUSCONSTITUENTID
left join dbo.REVENUEDEVELOPMENTFUNCTION rdf on rdf.ID = a.REVENUEDEVELOPMENTFUNCTIONID
left join dbo.REVENUEDEVELOPMENTFUNCTIONCODE rdfc on rdfc.ID = rdf.REVENUEDEVELOPMENTFUNCTIONCODEID
inner join dbo.FINANCIALTRANSACTION f on f.ID = a.FINANCIALTRANSACTIONID
where a.ID = @RECORDID;
--and a.AMENDMENTTYPECODE in(0,2,3);
close symmetric key sym_BBInfinity;
end
return 0;