USP_DATAFORMTEMPLATE_VIEW_MEMBERSHIPTRANSACTION
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@ACTIONCODE | tinyint | INOUT | |
@ACTIONDESCRIPTION | nvarchar(max) | INOUT | |
@MEMBERSHIPPROGRAMNAME | nvarchar(max) | INOUT | |
@MEMBERSHIPLEVELNAME | nvarchar(max) | INOUT | |
@MEMBERSHIPLEVELTERMDESCRIPTION | nvarchar(max) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_MEMBERSHIPTRANSACTION
(
@ID uniqueidentifier, -- represents MEMBERSHIPTRANSACTION.ID
@DATALOADED bit = 0 output,
@ACTIONCODE tinyint = null output,
@ACTIONDESCRIPTION nvarchar(max) = null output,
@MEMBERSHIPPROGRAMNAME nvarchar(max) = null output,
@MEMBERSHIPLEVELNAME nvarchar(max) = null output,
@MEMBERSHIPLEVELTERMDESCRIPTION nvarchar(max) = null output
)
as
set nocount on;
set @DATALOADED = 0;
-- I took the term description concatenation from the Total Revenue report.
select @DATALOADED = 1,
@ACTIONCODE = MT.ACTIONCODE,
@ACTIONDESCRIPTION = MT.ACTION,
@MEMBERSHIPPROGRAMNAME = MP.NAME,
@MEMBERSHIPLEVELNAME = ML.NAME,
@MEMBERSHIPLEVELTERMDESCRIPTION = isnull(
case MP.PROGRAMTYPECODE
when 0 then cast(MLT.TERMTIMELENGTH as nvarchar(5)) + ' ' + MLT.TERMLENGTH
when 1 then MLT.RECURRINGPAYMENTOPTION
when 2 then case when MLT.LIFETIMEPAYMENTOPTIONCODE = 0 then MLT.LIFETIMEPAYMENTOPTION
end
end
, '')
from dbo.MEMBERSHIPTRANSACTION MT
inner join dbo.MEMBERSHIPLEVEL ML on ML.ID = MT.MEMBERSHIPLEVELID
inner join dbo.MEMBERSHIPPROGRAM MP on MP.ID = ML.MEMBERSHIPPROGRAMID
inner join dbo.MEMBERSHIPLEVELTERM MLT on MLT.ID = MT.MEMBERSHIPLEVELTERMID
where MT.ID = @ID;
return 0;