fdsilva.desenv Novato

Registrado: Quarta-Feira, 28 de Novembro de 2012 Mensagens: 68
|
Enviada: Qua Ago 01, 2018 10:25 am Assunto: Valores Varbinary da Tabela para variavel Varchar no Delphi |
|
|
Prezados, bom dia.
Estou passando por uma situação complicada no Delphi, onde eu preciso pegar os valores encriptados de uma tabela e jogar o texto apresentado nesses campos em uma variável string.
O código é Basicamente esse:
Código: |
procedure TdlgCadBancos.Btn1Click(Sender: TObject);
var
RsSOS : Recordset;
xml : string;
codusu, codtela, nmusu, cnpj : string;
begin
inherited;
RsSOS := CreateADOObject(CLASS_Recordset) as Recordset;
codtela := 'GW0D00';
codusu := IntToStr(frmMain.CodUsuario);
nmusu := frmMain.Usuario;
cnpj := SomenteNumero(frmMain.ParamRet.Empresa.CNPJ_CPF);
with TfrmTelaWeb.Create(Application) do
begin
ADOCmdSOS.CommandText := '';
try
GWCommand(ErrorMessage, frmMain.ADOConnection.ConnectionObject,
Pchar(' IF EXISTS (select * from sysobjects where id = object_id(N'+QuotedStr('[TmpSOS]')+'))'+' DROP TABLE TmpSOS'));
except
end;
ADOCmdSOS.CommandText := 'CREATE TABLE TmpSOS '+#13+
' (SISTEMA varbinary(1000), CNPJ varbinary(1000), CODUSUARIO varbinary(1000), NOMEUSUARIO varbinary(1000), CODMENU varbinary(1000))'+#13+
' DECLARE @_chave varchar(10) = CONVERT(VARCHAR(10), GETDATE(), 103) '+#13+
' INSERT INTO TmpSOS (SISTEMA, CNPJ, CODUSUARIO, NOMEUSUARIO, CODMENU)'+#13+
' SELECT ENCRYPTBYPASSPHRASE(@_chave, '+QuotedStr('Profit')+') as SISTEMA '+
' , ENCRYPTBYPASSPHRASE(@_chave, '+QuotedStr(cnpj)+') as CNPJ '+
' , ENCRYPTBYPASSPHRASE(@_chave, '+QuotedStr(codusu)+') as CODUSUARIO '+
' , ENCRYPTBYPASSPHRASE(@_chave, '+QuotedStr(nmusu)+') as NOMEUSUARIO '+
' , ENCRYPTBYPASSPHRASE(@_chave, '+QuotedStr(codtela)+') as CODMENU';
RsSOS := ADOCmdSOS.Execute;
if RsSOS.Get_State <> 0 then
RsSOS.Close;
RsSOS := GWSelect(ErrorMessage,frmMain.ADOConnection.ConnectionObject,'TmpSOS','*','','');
xml := 'http://www.teste.com.br/ajuda.aspx?'+
'sistema='+VarToStr(RsSOS.Fields['SISTEMA'].Get_value)+
'&cnpj='+VarToStr(RsSOS.Fields['CNPJ'].Get_value)+
'&codusr='+VarToStr(RsSOS.Fields['CODUSUARIO'].Get_value)+
'&nomeusr='+VarToStr(RsSOS.Fields['NOMEUSUARIO'].Get_value)+
'&codmenu='+VarToStr(RsSOS.Fields['CODMENU'].Get_value);
end;
|
Basicamente, o que preciso é pegar o valor encriptado da tabela TmpSOS e passar esse valor encriptado em uma variável do tipo string chamada "XML". Porém quando vou olhar a variável varchar, ela não pegou o texto correspondente a tabela e coloca algo do tipo: '01&'
Alguém poderia me ajudar? |
|