Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal,
preciso relacionar tabelas por um campo "setor".
Na primeira tabela, este campo é sempre caixa alta, como: R97, I2, XY8.
Na segunda, ora vem caixa alta, ora baixa, como: r97 (não relaciona), I2 (relaciona) e xy8 (não relaciona).
Tentei resolver usando UPPER, mas ele tem resultados "estranhos" quando o campo é de letras e números misturados. Por exemplo, r97 tornava-se 97.
Como tratar o relacionamento? Tem uma forma de fazer a chave case insensitive ou fazer o upper sem perder algum caractere?
Quase resolveu! Mas os códigos só de números não relacionavam as tabelas. Encontrei esta solução:
if(istext(mid(setor_cod,1,1)),Upper(mid(setor_cod,1,1)),mid(setor_cod,1,1))
&if(istext(mid(setor_cod,2,1)),Upper(mid(setor_cod,2,1)),mid(setor_cod,2,1))
&if(istext(mid(setor_cod,3,1)),Upper(mid(setor_cod,3,1)),mid(setor_cod,3,1))
Boa noite, pelo que entendi você precisa relacionar dados iguais mas que estão caixa alta ou não seguidos por números.
já passei por algo parecido, a solução que apliquei foi, criar um mapping pegando todo o alfabeto, onde era 'a' fica 'A' e atribuir no campo pretendido formatando em text(),
ApplyMap('Mapid',Text(trim(Campo)))
Quase resolveu! Mas os códigos só de números não relacionavam as tabelas. Encontrei esta solução:
if(istext(mid(setor_cod,1,1)),Upper(mid(setor_cod,1,1)),mid(setor_cod,1,1))
&if(istext(mid(setor_cod,2,1)),Upper(mid(setor_cod,2,1)),mid(setor_cod,2,1))
&if(istext(mid(setor_cod,3,1)),Upper(mid(setor_cod,3,1)),mid(setor_cod,3,1))
Muito obrigado!