USP_DATAFORMTEMPLATE_ADD_EXCHANGESERVER

The save procedure used by the add dataform template "Exchange Server Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@USERNAME nvarchar(100) IN User name
@PASSWORD nvarchar(100) IN Password
@DOMAIN nvarchar(250) IN Domain
@URL nvarchar(500) IN URL
@USEIMPERSONATION bit IN Use Exchange impersonation
@ISDEFAULTSERVER bit IN Default server

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_EXCHANGESERVER
                    (
                        @ID uniqueidentifier = null output,
                        @CHANGEAGENTID uniqueidentifier = null,    
                        @USERNAME nvarchar(100) = null,
                        @PASSWORD nvarchar(100) = null,
                        @DOMAIN nvarchar(250) = null,
                        @URL nvarchar(500) = null,
                        @USEIMPERSONATION bit = 1,
                        @ISDEFAULTSERVER bit = 0
                    )
                    as
                        set nocount on;

                        declare @CURRENTDATE datetime;

                        if @ID is null
                            set @ID = newid();

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

                        set @CURRENTDATE = getdate();

                        begin try
                            -- Open the symmetric key for encryption

                            exec dbo.USP_GET_KEY_ACCESS;

                            if @ISDEFAULTSERVER = 1 begin
                                update dbo.EXCHANGESERVER set ISDEFAULTSERVER = 0;
                            end

                            insert into dbo.EXCHANGESERVER
                                (ID, USERNAME, PASSWORD, DOMAIN, URL, ISDEFAULTSERVER, DATEADDED, DATECHANGED, ADDEDBYID, CHANGEDBYID, USEIMPERSONATION)
                            values
                                (@ID, @USERNAME, EncryptByKey(Key_GUID('sym_BBInfinity'), @PASSWORD), @DOMAIN , @URL, @ISDEFAULTSERVER, @CURRENTDATE, @CURRENTDATE, @CHANGEAGENTID, @CHANGEAGENTID, @USEIMPERSONATION)

                            -- Make sure we close the symmetric key

                            close symmetric key sym_BBInfinity;
                        end try

                        begin catch
                            -- Make sure we close the symmetric key

                            close symmetric key sym_BBInfinity;

                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;