USP_DATAFORMTEMPLATE_EDIT_IMPORTPROCESSOPTIONS
The save procedure used by the edit dataform template "Import Process Options Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@IMPORTFILEPATH | nvarchar(200) | IN | Import file path |
@IMPERSONATE | bit | IN | Impersonate |
@IMPERSONATEUSERNAME | nvarchar(200) | IN | User name |
@IMPERSONATEPASSWORD | nvarchar(200) | 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_IMPORTPROCESSOPTIONS(@IMPORTFILEPATH nvarchar(200),
@IMPERSONATE bit,
@IMPERSONATEUSERNAME nvarchar(200),
@IMPERSONATEPASSWORD nvarchar(200),
@CHANGEAGENTID uniqueidentifier)
as
set nocount on;
declare @IMPERSONATEPASSWORDENCRYPTED nvarchar(max);
declare @EXISTINGIMPERSONATEPASSWORDENCRYPTED nvarchar(max);
declare @RECORDEXISTS bit;
set @RECORDEXISTS = 0;
select top(1) @EXISTINGIMPERSONATEPASSWORDENCRYPTED = IMPERSONATEPASSWORD, @RECORDEXISTS = 1 from dbo.IMPORTPROCESSOPTIONS order by DATEADDED desc;
-- Open the symmetric key for encryption
exec dbo.USP_GET_KEY_ACCESS;
if @IMPERSONATE = 0
begin
set @IMPERSONATEUSERNAME = '';
set @IMPERSONATEPASSWORD = '';
set @IMPERSONATEPASSWORDENCRYPTED = EncryptByKey(Key_GUID('sym_BBInfinity'), '');
end
else
begin
--Check for the garbage password that was passed up by the load procedure, and if it's the same, don't update the password.
if @RECORDEXISTS = 1 and @IMPERSONATEPASSWORD = 'g3(2=`-~405##@lZ91'
set @IMPERSONATEPASSWORDENCRYPTED = @EXISTINGIMPERSONATEPASSWORDENCRYPTED;
else
set @IMPERSONATEPASSWORDENCRYPTED = EncryptByKey(Key_GUID('sym_BBInfinity'), @IMPERSONATEPASSWORD);
end;
close symmetric key sym_BBInfinity;
if @RECORDEXISTS = 0
begin
insert into dbo.IMPORTPROCESSOPTIONS (IMPORTFILEPATH,
IMPERSONATE,
IMPERSONATEUSERNAME,
IMPERSONATEPASSWORD,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED)
values (@IMPORTFILEPATH,
@IMPERSONATE,
@IMPERSONATEUSERNAME,
@IMPERSONATEPASSWORDENCRYPTED,
@CHANGEAGENTID,
@CHANGEAGENTID,
getdate(),
getdate());
end
else
begin
update dbo.IMPORTPROCESSOPTIONS set IMPORTFILEPATH = @IMPORTFILEPATH,
IMPERSONATE = @IMPERSONATE,
IMPERSONATEUSERNAME = @IMPERSONATEUSERNAME,
IMPERSONATEPASSWORD = @IMPERSONATEPASSWORDENCRYPTED,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = getdate();
end;