UFN_DAILYSALEITEM_BUILDBUTTONTEXT

Returns the text for a daily sale button.

Return

Return Type
nvarchar(65)

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN

Definition

Copy


        create function dbo.UFN_DAILYSALEITEM_BUILDBUTTONTEXT(@ID uniqueidentifier)
        returns nvarchar(65)
        with execute as caller
        as begin
            declare @CHARACTERLIMIT tinyint
            set @CHARACTERLIMIT = 20

            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

            if @DESCRIPTIONTYPECODE1 = 2
            begin
                select 
                    @DESCRIPTION1 = substring(P.NAME,0,@CHARACTERLIMIT + 1)
                from dbo.PROGRAM P
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = P.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE1 = 3
            begin
                select 
                    @DESCRIPTION1 = substring(PTC.DESCRIPTION,0,@CHARACTERLIMIT + 1)
                from dbo.PRICETYPECODE PTC
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PRICETYPECODEID = PTC.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE1 = 4
            begin
                select 
                    @DESCRIPTION1 = '$' + convert(nvarchar(10),PP.FACEPRICE)
                from dbo.PROGRAMPRICE PP
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = PP.PROGRAMID and DSIP.PRICETYPECODEID = PP.PRICETYPECODEID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE2 = 2
            begin
                select 
                    @DESCRIPTION2 = substring(P.NAME,0,@CHARACTERLIMIT + 1)
                from dbo.PROGRAM P
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = P.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE2 = 3
            begin
                select 
                    @DESCRIPTION2 = substring(PTC.DESCRIPTION,0,@CHARACTERLIMIT + 1)
                from dbo.PRICETYPECODE PTC
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PRICETYPECODEID = PTC.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE2 = 4
            begin
                select 
                    @DESCRIPTION2 = '$' + convert(nvarchar(10),PP.FACEPRICE)
                from dbo.PROGRAMPRICE PP
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = PP.PROGRAMID and DSIP.PRICETYPECODEID = PP.PRICETYPECODEID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE3 = 2
            begin
                select 
                    @DESCRIPTION3 = substring(P.NAME,0,@CHARACTERLIMIT + 1)
                from dbo.PROGRAM P
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = P.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE3 = 3
            begin
                select 
                    @DESCRIPTION3 = substring(PTC.DESCRIPTION,0,@CHARACTERLIMIT + 1)
                from dbo.PRICETYPECODE PTC
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PRICETYPECODEID = PTC.ID
                where DSIP.ID = @ID
            end

            if @DESCRIPTIONTYPECODE3 = 4
            begin
                select 
                    @DESCRIPTION3 = '$' + convert(nvarchar(10),PP.FACEPRICE)
                from dbo.PROGRAMPRICE PP
                inner join dbo.DAILYSALEITEMPROGRAM DSIP on DSIP.PROGRAMID = PP.PROGRAMID and DSIP.PRICETYPECODEID = PP.PRICETYPECODEID
                where DSIP.ID = @ID
            end

            return @DESCRIPTION1 + ' ' + @DESCRIPTION2 + ' ' + @DESCRIPTION3
        end