USP_CURRENCY_GETATTRIBUTECURRENCIESFORRECORD
Returns currencies for a given record to be used when adding a currency attribute.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@RECORDTYPE | nvarchar(100) | IN | |
@RECORDID | uniqueidentifier | IN | |
@APPUSERID | uniqueidentifier | IN | |
@RECORDTRANSACTIONCURRENCYID | uniqueidentifier | INOUT | |
@RECORDBASECURRENCYID | uniqueidentifier | INOUT | |
@APPUSERDEFAULTCURRENCYID | uniqueidentifier | INOUT |
Definition
Copy
create procedure dbo.USP_CURRENCY_GETATTRIBUTECURRENCIESFORRECORD
(
@RECORDTYPE nvarchar(100),
@RECORDID uniqueidentifier,
@APPUSERID uniqueidentifier,
@RECORDTRANSACTIONCURRENCYID uniqueidentifier = null output,
@RECORDBASECURRENCYID uniqueidentifier = null output,
@APPUSERDEFAULTCURRENCYID uniqueidentifier = null output
)
as
begin
set nocount on;
if upper(@RECORDTYPE) = 'DESIGNATION'
select @RECORDBASECURRENCYID = BASECURRENCYID from dbo.DESIGNATION where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'EVENT'
select @RECORDBASECURRENCYID = BASECURRENCYID from dbo.EVENT where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'FUNDING REQUEST'
select @RECORDTRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID, @RECORDBASECURRENCYID = BASECURRENCYID from dbo.FUNDINGREQUEST where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'FUNDRAISING PURPOSE'
select @RECORDBASECURRENCYID = BASECURRENCYID from dbo.DESIGNATIONLEVEL where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'GRANT PROGRAM'
select @RECORDTRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID, @RECORDBASECURRENCYID = BASECURRENCYID from dbo.GRANTS where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'OPPORTUNITY'
select @RECORDTRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID, @RECORDBASECURRENCYID = BASECURRENCYID from dbo.OPPORTUNITY where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'PLANNED GIFT'
select @RECORDTRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID, @RECORDBASECURRENCYID = BASECURRENCYID from dbo.PLANNEDGIFT where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'PROSPECT PLAN'
select @RECORDBASECURRENCYID = BASECURRENCYID from dbo.PROSPECTPLAN where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'REGISTRANT'
select
@RECORDBASECURRENCYID = EVENT.BASECURRENCYID
from
dbo.REGISTRANT
inner join dbo.EVENT on REGISTRANT.EVENTID = EVENT.ID
where
REGISTRANT.ID = @RECORDID;
else if upper(@RECORDTYPE) = 'REVENUE'
select @RECORDTRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID, @RECORDBASECURRENCYID = BASECURRENCYID from dbo.REVENUE where ID = @RECORDID;
else if upper(@RECORDTYPE) = 'SPONSORSHIP OPPORTUNITY CHILD'
select
@RECORDBASECURRENCYID = SPONSORSHIPPROGRAM.BASECURRENCYID
from
dbo.SPONSORSHIPPROGRAM
inner join dbo.SPONSORSHIPOPPORTUNITYGROUP on SPONSORSHIPOPPORTUNITYGROUP.ID = SPONSORSHIPPROGRAM.SPONSORSHIPOPPORTUNITYGROUPID
inner join dbo.SPONSORSHIPOPPORTUNITY on SPONSORSHIPOPPORTUNITYGROUP.ID = SPONSORSHIPOPPORTUNITYGROUP.ID
inner join dbo.SPONSORSHIPOPPORTUNITYCHILD on SPONSORSHIPOPPORTUNITYCHILD.ID = SPONSORSHIPOPPORTUNITY.ID
where
SPONSORSHIPOPPORTUNITYCHILD.ID = @RECORDID;
else
select @APPUSERDEFAULTCURRENCYID = dbo.UFN_APPUSER_GETBASECURRENCY(@APPUSERID);
end