UFN_DAILYSALEITEM_BUILDMEMBERSHIPBUTTONTEXT
Returns the text for a daily membership sale button.
Return
Return Type |
---|
nvarchar(65) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CURRENCYSYMBOL | nchar | IN |
Definition
Copy
CREATE function dbo.UFN_DAILYSALEITEM_BUILDMEMBERSHIPBUTTONTEXT
(
@ID uniqueidentifier,
@CURRENCYSYMBOL nchar(1)
)
returns nvarchar(65)
with execute as caller
as begin
declare @LINESEPARATOR nchar(1) = char(10)
declare @DESCRIPTIONTYPECODE1 tinyint
declare @DESCRIPTIONTYPECODE2 tinyint
declare @DESCRIPTIONTYPECODE3 tinyint
declare @DESCRIPTION1 nvarchar(20)
declare @DESCRIPTION2 nvarchar(20)
declare @DESCRIPTION3 nvarchar(20)
select
@DESCRIPTIONTYPECODE1 = DESCRIPTIONFIELD1TYPECODE,
@DESCRIPTIONTYPECODE2 = DESCRIPTIONFIELD2TYPECODE,
@DESCRIPTIONTYPECODE3 = DESCRIPTIONFIELD3TYPECODE,
@DESCRIPTION1 = DESCRIPTIONFIELD1,
@DESCRIPTION2 = DESCRIPTIONFIELD2,
@DESCRIPTION3 = DESCRIPTIONFIELD3
from dbo.DAILYSALEITEM
where ID = @ID
declare @PROGRAMNAME nvarchar(100)
declare @LEVELNAME nvarchar(100)
declare @TERMDESCRIPTION nvarchar(100)
declare @TERMPRICE nvarchar(11)
declare @CUSTOM nvarchar(100)
select
@PROGRAMNAME = [MEMBERSHIPPROGRAM].[NAME],
@LEVELNAME = [MEMBERSHIPLEVEL].[NAME],
@TERMDESCRIPTION = dbo.UFN_MEMBERSHIPLEVELTERM_GETVALUE([MEMBERSHIPLEVELTERM].ID),
@TERMPRICE = @CURRENCYSYMBOL + convert(nvarchar(10),[MEMBERSHIPLEVELTERM].AMOUNT)
from dbo.DAILYSALEITEMMEMBERSHIP
inner join dbo.MEMBERSHIPLEVELTERM
on DAILYSALEITEMMEMBERSHIP.MEMBERSHIPLEVELTERMID = MEMBERSHIPLEVELTERM.ID
inner join dbo.MEMBERSHIPLEVEL
on DAILYSALEITEMMEMBERSHIP.MEMBERSHIPLEVELID = MEMBERSHIPLEVEL.ID
inner join dbo.MEMBERSHIPPROGRAM
on DAILYSALEITEMMEMBERSHIP.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
where DAILYSALEITEMMEMBERSHIP.ID = @ID
select
@DESCRIPTION1 = case @DESCRIPTIONTYPECODE1
when 2 then @PROGRAMNAME
when 4 then @TERMPRICE
when 5 then @LEVELNAME
when 6 then @TERMDESCRIPTION
when 7 then @TERMDESCRIPTION + ' ' + @TERMPRICE
else
@DESCRIPTION1
end,
@DESCRIPTION2 = case @DESCRIPTIONTYPECODE2
when 2 then @PROGRAMNAME
when 4 then @TERMPRICE
when 5 then @LEVELNAME
when 6 then @TERMDESCRIPTION
when 7 then @TERMDESCRIPTION + ' ' + @TERMPRICE
else
@DESCRIPTION2
end,
@DESCRIPTION3 = case @DESCRIPTIONTYPECODE3
when 2 then @PROGRAMNAME
when 4 then @TERMPRICE
when 5 then @LEVELNAME
when 6 then @TERMDESCRIPTION
when 7 then @TERMDESCRIPTION + ' ' + @TERMPRICE
else
@DESCRIPTION3
end
return isnull(@DESCRIPTION1, '') + @LINESEPARATOR + isnull(@DESCRIPTION2, '') + @LINESEPARATOR + isnull(@DESCRIPTION3, '')
end