11446 - Comando para criptografar e descriptografar a senha do representante
Problema: Após a versão 5.7.4.1 do ERP, o campo E090REP.SenRep, equivalente ao campo Senha do cadastro de representantes (efetuado na tela F090REP - Cadastros / Representantes / Cadastro) é criptografado no momento da gravação da informação no banco de dados. Por motivos diversos (integração com sistemas de terceiros, por exemplo), é necessário comandos de criptografar e descriptografar esta senha. Quais são os comandos que podem ser utilizados?
Quando ocorre / onde se aplica: criptografia da senha do representante na base de dados do ERP
Solução: Solução 11446: Seguem os comandos a serem utilizados para criptografar/descriptografar a senha do Representante nas consultas efetuadas no banco de dados do ERP:
Criptografar
select UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(UTL_RAW.cast_to_raw(e.senrep))) as SenhaRep from e090rep e where e.codrep = <código representante>
Descriptografar
select UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_decode(UTL_RAW.cast_to_raw(e.senrep))) as SenhaRep from e090rep e where e.codrep = <código representante>
          
        Quando ocorre / onde se aplica: criptografia da senha do representante na base de dados do ERP
Solução: Solução 11446: Seguem os comandos a serem utilizados para criptografar/descriptografar a senha do Representante nas consultas efetuadas no banco de dados do ERP:
Criptografar
select UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(UTL_RAW.cast_to_raw(e.senrep))) as SenhaRep from e090rep e where e.codrep = <código representante>
Descriptografar
select UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_decode(UTL_RAW.cast_to_raw(e.senrep))) as SenhaRep from e090rep e where e.codrep = <código representante>
Segue o script para criptografia e descriptografai de uma determinada senha na base64 em SQL Server:
  * É importante saber que devido ao tipo de binário utilizado na construção da nossa ferramenta interna 'DBExplorer', 
   não será apresentado o resultado no editor, porém, em outros clients de banco, como o 'SQL Server Manager Studio', por exemplo, 
   será possível executar o script e visualizar a senha.
--Criptografar a senha 'SENIOR' em Base64:
--Criptografar a senha 'SENIOR' em Base64:
SELECT
    CAST(N'' AS XML).value(
          'xs:base64Binary(xs:hexBinary(sql:column(bin)))'
        , 'VARCHAR(MAX)'
    )   Criptografada
FROM (
    SELECT CAST('SENIOR' AS VARBINARY(MAX)) AS bin
) AS bin_sql_server_temp;
--Descriptografar a senha 'U0VOSU9S' em Base64:
SELECT 
    CAST(
        CAST(N'' AS XML).value(
            'xs:base64Binary(U0VOSU9S)'
          , 'VARBINARY(MAX)'
        ) 
        AS VARCHAR(MAX)
    )   Descriptografada
;