USP_DATAFORMTEMPLATE_EDIT_BBPSLOGIN

The save procedure used by the edit dataform template "Blackbaud Payment Service Login Edit Form".

Parameters

Parameter Parameter Type Mode Description
@USERNAME nvarchar(100) IN Username
@PASSWORD nvarchar(100) IN Password
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_BBPSLOGIN
                    (
                        @USERNAME nvarchar(100),
                        @PASSWORD nvarchar(100),
                        @CHANGEAGENTID uniqueidentifier = null
                    )
                    as
                        set nocount on

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

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

                        exec dbo.USP_GET_KEY_ACCESS

                        begin try
                            update dbo.BBPSLOGIN set
                                USERNAME = EncryptByKey(key_GUID('sym_BBInfinity'), @USERNAME),
                                PASSWORD = EncryptByKey(key_GUID('sym_BBInfinity'), @PASSWORD),
                                DATECHANGED = @CURRENTDATE,
                                CHANGEDBYID = @CHANGEAGENTID

                            -- If this is the first time this form is saved, the row needs to be created

                            if @@ROWCOUNT = 0
                            begin                                
                                insert into dbo.BBPSLOGIN
                                (
                                    USERNAME,
                                    PASSWORD,
                                    ADDEDBYID,
                                    CHANGEDBYID,
                                    DATEADDED,
                                    DATECHANGED                                
                                )
                                values
                                (
                                    EncryptByKey(key_GUID('sym_BBInfinity'), @USERNAME),
                                    EncryptByKey(key_GUID('sym_BBInfinity'), @PASSWORD),
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID,
                                    @CURRENTDATE,
                                    @CURRENTDATE    
                                )
                            end

                            close symmetric key sym_BBInfinity
                        end try
                        begin catch
                            close symmetric key sym_BBInfinity
                            return 1;
                        end catch

                        return 0