USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPEXPRESSPARTSETTINGS

The save procedure used by the edit dataform template "Membership Express Part Settings Edit Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@SITECONTENTID int IN Site content
@ORDERPAGEID int IN Order page
@INCLUDEPRIMARYTITLE bit IN Include primary member title
@REQUIREPRIMARYTITLE bit IN Require primary member title
@REQUIREPRIMARYFIRSTNAME bit IN Require primary member first name
@REQUIREPRIMARYPHONE bit IN Include primary member phone
@REQUIREPRIMARYEMAIL bit IN Require primary member phone
@INCLUDEADDITIONALTITLE bit IN Include additional member title
@REQUIREADDITIONALTITLE bit IN Require additional member title
@REQUIREADDITIONALFIRSTNAME bit IN Require additional member first name

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPEXPRESSPARTSETTINGS
                    (
                        @ID uniqueidentifier,  -- use SiteContent Guid
                        @CHANGEAGENTID uniqueidentifier = null,
                        @SITECONTENTID int,
                        @ORDERPAGEID int,
                        @INCLUDEPRIMARYTITLE bit,
                        @REQUIREPRIMARYTITLE bit,
                        @REQUIREPRIMARYFIRSTNAME bit,
                        @REQUIREPRIMARYPHONE bit,
                        @REQUIREPRIMARYEMAIL bit,
                        @INCLUDEADDITIONALTITLE bit,
                        @REQUIREADDITIONALTITLE bit,
                        @REQUIREADDITIONALFIRSTNAME bit
                    )
                    as
                        set nocount on;

                        if @CHANGEAGENTID is null  
                            exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                        select @ID = [Guid] --Making sure we're using the right ID
                        from dbo.[SiteContent] with (nolock)
                        where ID = @SITECONTENTID

                        if isnull(@INCLUDEPRIMARYTITLE,0) = 0
                            set @REQUIREPRIMARYTITLE = 0;

                        if isnull(@INCLUDEADDITIONALTITLE,0) = 0
                            set @REQUIREADDITIONALTITLE = 0;

                        begin try                    
                            merge dbo.[MEMBERSHIPEXPRESSPARTSETTINGS] as [TARGET]
                            using (select @ID as ID) as [SOURCE]
                            on (TARGET.ID = SOURCE.ID)
                            when matched then
                                update 
                                set 
                                    SITECONTENTID = @SITECONTENTID,
                                    ORDERPAGEID = @ORDERPAGEID,
                                    INCLUDEPRIMARYTITLE = isnull(@INCLUDEPRIMARYTITLE, 0),
                                    REQUIREPRIMARYTITLE = isnull(@REQUIREPRIMARYTITLE, 0),
                                    REQUIREPRIMARYFIRSTNAME = isnull(@REQUIREPRIMARYFIRSTNAME, 1),
                                    REQUIREPRIMARYPHONE = isnull(@REQUIREPRIMARYPHONE, 0),
                                    REQUIREPRIMARYEMAIL = isnull(@REQUIREPRIMARYEMAIL, 1),
                                    INCLUDEADDITIONALTITLE = isnull(@INCLUDEADDITIONALTITLE, 0),
                                    REQUIREADDITIONALTITLE = isnull(@REQUIREADDITIONALTITLE, 0),
                                    REQUIREADDITIONALFIRSTNAME = isnull(@REQUIREADDITIONALFIRSTNAME,1), 
                                    CHANGEDBYID = @CHANGEAGENTID,
                                    DATECHANGED = @CURRENTDATE
                            when not matched then
                                insert (
                                    ID, 
                                    SITECONTENTID, 
                                    ORDERPAGEID, 
                                    INCLUDEPRIMARYTITLE,
                                    REQUIREPRIMARYTITLE,
                                    REQUIREPRIMARYFIRSTNAME,
                                    REQUIREPRIMARYPHONE,
                                    REQUIREPRIMARYEMAIL,
                                    INCLUDEADDITIONALTITLE,
                                    REQUIREADDITIONALTITLE,
                                    REQUIREADDITIONALFIRSTNAME,
                                    ADDEDBYID, 
                                    CHANGEDBYID, 
                                    DATEADDED, 
                                    DATECHANGED
                                ) 
                                values (
                                    @ID
                                    @SITECONTENTID
                                    @ORDERPAGEID,
                                    isnull(@INCLUDEPRIMARYTITLE, 0),
                                    isnull(@REQUIREPRIMARYTITLE, 0),
                                    isnull(@REQUIREPRIMARYFIRSTNAME, 1),
                                    isnull(@REQUIREPRIMARYPHONE, 0),
                                    isnull(@REQUIREPRIMARYEMAIL, 1),
                                    isnull(@INCLUDEADDITIONALTITLE, 0),
                                    isnull(@REQUIREADDITIONALTITLE, 0),
                                    isnull(@REQUIREADDITIONALFIRSTNAME, 1),
                                    @CHANGEAGENTID
                                    @CHANGEAGENTID
                                    @CURRENTDATE
                                    @CURRENTDATE
                                );
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                        end catch

                        return 0;