USP_DATAFORMTEMPLATE_EDIT_COAUPDATE_3

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@NAME nvarchar(150) IN
@DESCRIPTION nvarchar(250) IN
@SITEID uniqueidentifier IN
@PRIMARYCONTACTNAME nvarchar(250) IN
@PRIMARYCONTACTEMAIL UDT_EMAILADDRESS IN
@PRIMARYCONTACTPHONE nvarchar(20) IN
@ALTERNATECONTACTNAME nvarchar(250) IN
@ALTERNATECONTACTEMAIL UDT_EMAILADDRESS IN
@ALTERNATECONTACTPHONE nvarchar(20) IN
@CURRENTAPPUSERID uniqueidentifier IN
@PRIMARYCONTACTTITLECODEID uniqueidentifier IN
@CONTACTJOBTITLE nvarchar(50) IN

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_COAUPDATE_3
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier,
                        @NAME nvarchar(150),
                        @DESCRIPTION nvarchar(250),
                        @SITEID uniqueidentifier,
                        @PRIMARYCONTACTNAME nvarchar(250),
                        @PRIMARYCONTACTEMAIL dbo.UDT_EMAILADDRESS,
                        @PRIMARYCONTACTPHONE nvarchar(20),
                        @ALTERNATECONTACTNAME nvarchar(250),
                        @ALTERNATECONTACTEMAIL dbo.UDT_EMAILADDRESS,
                        @ALTERNATECONTACTPHONE nvarchar(20),
                        @CURRENTAPPUSERID uniqueidentifier,
                        @PRIMARYCONTACTTITLECODEID uniqueidentifier,
                        @CONTACTJOBTITLE nvarchar(50)
                    )
                    as
                        set nocount on;

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

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

                        if (@SITEID is not null) begin
                            if dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, @SITEID) = 0 begin
                                raiserror ('ERR_SITE_NOACCESS',13,1);
                                return 1;
                            end
                        end

                        declare @CURRENTNAME nvarchar(150) = (select [NAME] from dbo.[COAUPDATE] where [ID] = @ID);
                        begin try

                            update dbo.COAUPDATE
                            set NAME = @NAME,
                                DESCRIPTION = @DESCRIPTION,
                                SITEID = @SITEID,
                                PRIMARYCONTACTNAME = @PRIMARYCONTACTNAME,
                                PRIMARYCONTACTEMAIL = @PRIMARYCONTACTEMAIL,
                                PRIMARYCONTACTPHONE = @PRIMARYCONTACTPHONE,
                                ALTERNATECONTACTNAME = @ALTERNATECONTACTNAME,
                                ALTERNATECONTACTEMAIL = @ALTERNATECONTACTEMAIL,
                                ALTERNATECONTACTPHONE = @ALTERNATECONTACTPHONE,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE,
                                PRIMARYCONTACTTITLECODEID = @PRIMARYCONTACTTITLECODEID,
                                CONTACTJOBTITLE = @CONTACTJOBTITLE
                            where ID = @ID;

                            --Update the process names if the name of the process has changed

                            if left(@NAME, 100) <> left(@CURRENTNAME, 100)
                            begin
                                declare @PROCESSNAME nvarchar(100) = left(@NAME, 100);

                                update
                                    dbo.[COAUPDATESUBMITPROCESS]
                                set
                                    [NAME] = @PROCESSNAME,
                                    [CHANGEDBYID] = @CHANGEAGENTID,
                                    [DATECHANGED] = @CURRENTDATE
                                where
                                    [COAUPDATEID] = @ID;

                                update
                                    dbo.[COAUPDATERESUBMITPROCESS]
                                set
                                    [NAME] = @PROCESSNAME,
                                    [CHANGEDBYID] = @CHANGEAGENTID,
                                    [DATECHANGED] = @CURRENTDATE
                                where
                                    [COAUPDATEID] = @ID;

                                update
                                    dbo.[COAUPDATEGETPROCESS]
                                set
                                    [NAME] = @PROCESSNAME,
                                    [CHANGEDBYID] = @CHANGEAGENTID,
                                    [DATECHANGED] = @CURRENTDATE
                                where
                                    [COAUPDATEID] = @ID;
                            end
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;