UFN_PDACCOUNT_GETSITEID
Returns SITE ID for transaction being generated.
Return
Return Type |
---|
uniqueidentifier |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUESPLITID | uniqueidentifier | IN | |
@REVENUETRANSACTIONTYPECODE | tinyint | IN | |
@APPLICATIONCODE | tinyint | IN | |
@PAYMENTMETHODCODE | tinyint | IN | |
@DESIGNATIONID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_PDACCOUNT_GETSITEID(
@REVENUESPLITID as uniqueidentifier,
@REVENUETRANSACTIONTYPECODE as tinyint,
@APPLICATIONCODE tinyint,
@PAYMENTMETHODCODE as tinyint,
@DESIGNATIONID as uniqueidentifier)
returns uniqueidentifier
with execute as caller
as begin
declare @RESULT as uniqueidentifier = null
if @APPLICATIONCODE = 1 -- Event Registration
begin
select TOP 1 @RESULT = T3.SITEID from EVENTREGISTRANTPAYMENT T1
inner join REGISTRANT T2 on T1.REGISTRANTID=T2.ID
inner join EVENTSITE T3 on T3.EVENTID=T2.EVENTID
where T1.PAYMENTID = @REVENUESPLITID
order by T3.DATEADDED desc
return @RESULT
end
if @APPLICATIONCODE = 5 -- Membership
begin
select @RESULT=SITEID from MEMBERSHIPPROGRAM T1
join MEMBERSHIPLEVEL T2 on T1.ID = T2.MEMBERSHIPPROGRAMID
join MEMBERSHIPTRANSACTION T3 on T2.ID = T3.MEMBERSHIPLEVELID
where REVENUESPLITID = @REVENUESPLITID
return @RESULT
end
if @RESULT is null
begin
select @RESULT=SITEID from DESIGNATIONLEVEL T1
join DESIGNATION T2 on T1.ID = T2.DESIGNATIONLEVEL1ID
join REVENUESPLIT T3 on T2.ID = T3.DESIGNATIONID
where T3.ID = @REVENUESPLITID
if @RESULT is null
select @RESULT=SITEID from DESIGNATIONLEVEL T1
join DESIGNATION T2 on T1.ID = T2.DESIGNATIONLEVEL2ID
join REVENUESPLIT T3 on T2.ID = T3.DESIGNATIONID
where T3.ID = @REVENUESPLITID
if @RESULT is null
select @RESULT=SITEID from DESIGNATIONLEVEL T1
join DESIGNATION T2 on T1.ID = T2.DESIGNATIONLEVEL3ID
join REVENUESPLIT T3 on T2.ID = T3.DESIGNATIONID
where T3.ID = @REVENUESPLITID
if @RESULT is null
select @RESULT=SITEID from DESIGNATIONLEVEL T1
join DESIGNATION T2 on T1.ID = T2.DESIGNATIONLEVEL4ID
join REVENUESPLIT T3 on T2.ID = T3.DESIGNATIONID
where T3.ID = @REVENUESPLITID
if @RESULT is null
select @RESULT=SITEID from DESIGNATIONLEVEL T1
join DESIGNATION T2 on T1.ID = T2.DESIGNATIONLEVEL5ID
join REVENUESPLIT T3 on T2.ID = T3.DESIGNATIONID
where T3.ID = @REVENUESPLITID
return @RESULT
end
return @RESULT
end