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