USP_MICROSITEMEMBERSHIPLEVEL_ONLINE

Executes the "Microsite Membership Level 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_MICROSITEMEMBERSHIPLEVEL_ONLINE
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier
                    )
                    as begin
                        declare @MEMBERSHIPPROGRAMID uniqueidentifier = null
                        select @MEMBERSHIPPROGRAMID = [MEMBERSHIPLEVEL].[MEMBERSHIPPROGRAMID]
                        from dbo.[MEMBERSHIPLEVEL]
                        where [ID] = @ID

                        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] = @MEMBERSHIPPROGRAMID
                        )
                        begin
                            --See if membership level isn't already online before adding

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

                        return 0;
                    end