Ajuda - Campo Tipo Select - Tratar informações antes de apresentá-las (SC_DECODE)

Olá pessoal! Por favor, preciso de uma ajuda. Desenvolvi uma aplicação para um escritório contábil, e devido a LGPD, meu cliente solicitou que alguns dados sejam armazenados com criptografia (exemplo: CPF, Número do PIS, Telefone, entre outros).

Utilizei as funções SC_ENCODE/SC_DECODE nas aplicações de formulário/consulta e para as transações de manutenção atendem as necessidades mínimas solicitadas.

Em alguns formulários, utilizamos campos TIPO SELECT que contém informações que foram armazenadas com a criptografia gerada pela macro SC_ENCODE. É neste ponto que preciso muito da ajuda e orientação dos amigos, não consigo utilizar a função SC_DECODE para descriptografar os dados e apresentá-los ao usuário no SELECT DO CAMPO.

Por favor, alguém já necessitou tratar os dados resultantes do SELECT informado antes de mostrá-los no campo SELECT? É possível fazer isso? Seria possível me orientar a fazê-lo?

Desde já, sou muito grato pelo retorno.

Importante: meu objetivo neste tópico é aprender mais sobre a ferramenta SC e conhecer como posso fazer este processo, e atender a necessidade do cliente.

Não imagino que dados em um componente select sejam sensíveis para serem tratados e criptografados.

Nesse caso tem que montar o select dinâmicamente.

jquery refazer os options do compnente select.

importe essas duas apps que demonstram como criar o componente select dinamicamente:

https://bit.ly/3jnDdfe

Demonstrando:

https://dev.iwh.tec.br/scriptcase/control_campo_select_dinamico/

https://dev.iwh.tec.br/scriptcase/select_dinamico_cadastro_form/

1 Curtida

Olá Haroldo! Obrigado pelo apoio!

Sim, entendo seu questionamento, vou explicar rapidamente. O cliente solicitou a criptograia do CPF e alguns dados pessoais para todo o projeto em virtude de uma solicitação exigida por uma consultoria para atender a LGPD.

Ocorre que este dado é utilizado em alguns formulários concatenado ao nome do cliente para identificação de homônimos (definição do projeto do cliente) pelos atendentes (ex: José da Silva | 177.***.948-18). Na definição do projeto, não aceitaram (ID/Código) devido aos procedimentos de identificação de segurança por parte dos atendentes em suas ligações. Neste caso, como utilizamos o SC_ENCODE, não conseguimos devolver naturalmente o dado no SELECT.

Sou muito grato por sua resposta, e vou estudar para aplicá-lo. Se tiver alguma dúvida, posso lhe perguntar?

Muito obrigado

Veja bem, o componente select é estático, ou seja, não é como o autocomplete.
Ele após carregar seus options eles ficam lá durante a vida da aplicação na sessão.

Estou precisando desse exemplo também. Porém ao tentar executar, retorna uma mensagem que falta uma biblioteca externa

Verdade, @thyagohenrique85, não me atentei a essa biblioteca externa, segue:

http://iwh.tec.br/downloads/GlobalClass.zip

No exemplo é possivel usar uma variável global no lugar da classe, eu criei essa classe a bastante tempo, quando em uma das versões do Scriptcase, estava tendo problemas com as globais.

3 Curtidas

Obrigado, através da sua dica consegui chegar na minha necessidade.

2 Curtidas

Haroldo, Muito obrigado! Gratidão

1 Curtida

Boa tarde a todos! Voltando a este assunto, é possível incluir uma imagem no select? Tentei incluir no código a tag img src do html mas ela não mostra a imagem.

A Tag Option do componente select não aceita imagens.

Mas existem truques que simula um select com imagens nos itens.

https://pt.stackoverflow.com/questions/13188/como-criar-um-select-com-imagens-nas-opçõeshttps://pt.stackoverflow.com/questions/13188/como-criar-um-select-com-imagens-nas-opções

Vou ver o link, obrigado.

Boa tarde! Veja se conseguem me tirar mais uma dúvida. Preciso usar o select dinâmico pra mais de um campo no mesmo formulário. Porém, acredito que esteja dando algum conflito na hora de carregar a aplicação. Quando inspeciono elementos e vou na guia Consoles, mostra o seguinte erro:

Uncaught TypeError: $(...).html(...) is not a function
    at HTMLDocument.<anonymous> ((index):17172)
    at j (VM36314 jquery.js:2)
    at k (VM36314 jquery.js:2)

Desde já, grato pela atenção.

@thyagohenrique85, pode apresentar seu código aqui e em qual evento está executando?

Boa tarde. Acabei resolvendo de outra forma sem precisar disso. Agradeço a atenção dispensada.