USP_MICROSITE_MEMBERSHIPPROGRAM_LEVELSONLINE

Executes the "Microsite Membership Program Levels Online" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being updated.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the update.

Definition

Copy


                    CREATE procedure dbo.USP_MICROSITE_MEMBERSHIPPROGRAM_LEVELSONLINE
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier
                    )
                    as begin
                        if @CHANGEAGENTID is null  
                            exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;

                        declare @CURRENTDATE datetime;
                        set @CURRENTDATE = getdate();

                        --See if program is online

                        if exists(
                            select 1
                            from dbo.[MICROSITEPAGE]
                            where [OBJECTID] = @ID
                        )
                        begin try
                            insert into dbo.[MICROSITEMEMBERSHIPLEVEL] (
                                [ID],
                                [DATEADDED],
                                [DATECHANGED],
                                [ADDEDBYID],
                                [CHANGEDBYID]
                            )
                            select
                                [ID],
                                @CURRENTDATE,
                                @CURRENTDATE,
                                @CHANGEAGENTID,
                                @CHANGEAGENTID
                            from dbo.[MEMBERSHIPLEVEL]
                            where 
                                [MEMBERSHIPLEVEL].[MEMBERSHIPPROGRAMID] = @ID and
                                [MEMBERSHIPLEVEL].[ISACTIVE] = 1 and
                                not exists(select 1 from dbo.[MICROSITEMEMBERSHIPLEVEL] where [MICROSITEMEMBERSHIPLEVEL].[ID] = [MEMBERSHIPLEVEL].[ID])
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;
                    end