USP_DATAFORMTEMPLATE_EDITLOAD_MEMBERSHIPPROGRAMGENERAL

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@DATALOADED bit INOUT
@TSLONG bigint INOUT
@NAME nvarchar(100) INOUT
@DESCRIPTION nvarchar(255) INOUT
@CATEGORY tinyint INOUT
@SITEID uniqueidentifier INOUT
@ALLOWMULTIPLEMEMBERSHIPS bit INOUT
@SINGLETERMLENGTH int INOUT
@SINGLETERMLENGTHCODE tinyint INOUT

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_MEMBERSHIPPROGRAMGENERAL(
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @TSLONG bigint = 0 output,
                        @NAME nvarchar(100) = null output,
                        @DESCRIPTION nvarchar(255) = null output,
                        @CATEGORY tinyint = null output,
                        @SITEID uniqueidentifier=null output,
                        @ALLOWMULTIPLEMEMBERSHIPS bit = null output,
                        @SINGLETERMLENGTH int = null output,
                        @SINGLETERMLENGTHCODE tinyint = null output
                    )
                    as

                        set nocount on;

                        set @DATALOADED = 0
                        set @TSLONG = 0

                        select
                            @DATALOADED = 1,
                            @TSLONG = TSLONG,
                            @NAME = NAME,
                            @DESCRIPTION = DESCRIPTION,
                            @CATEGORY = CATEGORYCODE,
                            @SITEID = SITEID,
                            @ALLOWMULTIPLEMEMBERSHIPS = ALLOWMULTIPLEMEMBERSHIPS
                        from dbo.MEMBERSHIPPROGRAM
                        where ID = @ID

                        --For annual programs, if there is only a single term, get the length of the single term
                        if (select count(MEMBERSHIPLEVELTERM.ID) from dbo.MEMBERSHIPLEVELTERM where MEMBERSHIPLEVELTERM.LEVELID =
                                (select top 1 MEMBERSHIPLEVEL.ID from dbo.MEMBERSHIPLEVEL inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIPLEVEL.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
                                    where MEMBERSHIPPROGRAM.ID = @ID and MEMBERSHIPPROGRAM.PROGRAMTYPECODE = 0)) = 1
                        begin
                            select top 1 @SINGLETERMLENGTH = MEMBERSHIPLEVELTERM.TERMTIMELENGTH,
                                    @SINGLETERMLENGTHCODE = MEMBERSHIPLEVELTERM.TERMLENGTHCODE
                            from dbo.MEMBERSHIPLEVELTERM
                            inner join dbo.MEMBERSHIPLEVEL on MEMBERSHIPLEVELTERM.LEVELID = MEMBERSHIPLEVEL.ID
                            where MEMBERSHIPLEVEL.MEMBERSHIPPROGRAMID = @ID
                        end
                        else
                        begin
                            select @SINGLETERMLENGTH = 0,
                                    @SINGLETERMLENGTHCODE = 1
                        end

                        return 0;