ao usar a função .split("|") ele separa por letra sem respeitar a delimitação do pipe "|" que eu pus.
ou seja, cada letra se torna uma nova posição do meu array em vez separar pelo pipe
alguém saberia dizer o que estou fazendo de errado?
Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.
Guilherme, o comportamento de fato não é o esperado, estranho. Poderia anexar imagem do código no momento do split e o uso da variável que o recebeu?
anexei a imagem, pelo que eu percebi em alguns testes, ele ignora COMPLETAMENTE o que eu coloco entre as minhas aspas, por exemplo, descobri que consigo comparar coisas por null, mas sempre que coloco algo entre aspas ele considera que coloquei somente as aspas
Ao tentar reproduzir a situação descrita, no meu ambiente funcionou. Faz o que o Carlo pediu, Guilherme, pode ajudar a entender melhor o problema.
Guilherme, vi seu print e notei que o processamento é feito no backend. Já tentou alterar o separador? Por uma vírgula, por exemplo?
O que acontece é que o Fluig utiliza uma biblioteca chamada Rhino para fazer a transcrição de código Javascript para Java. Com isso, algumas vezes e alguns comandos acabam não tendo o comportamento esperado em Javascript, isso por um conflito de classes ou coisa parecida. Caso você altere o separador e o mesmo continue com o problema, é possível que haja esse problema na transcrição. A dica é não usar comandos/funções que possam ter comportamento ou chamadas diferentes em ambas as linguagens. Estarei criando um script que talvez possa ajudar. Logo mais posto aqui.
Gabriel, segue função que pode te ajudar:
filialCCspl = separaPipe(filialCC);
function separaPipe(palavra){
var arrayRetorno = [];
var palavra = "" + palavra;
while(palavra.indexOf("|") > -1){
arrayRetorno.push(palavra.substr(0, palavra.indexOf("|")));
palavra = palavra.substr(palavra.indexOf("|")+1);
}
arrayRetorno.push(palavra)
return arrayRetorno;
}
Tenta com essa função, basta definir ela em seu script. Nos retorne com o resultado por favor!
Caso a resposta seja útil, marque-a como correta, pode ajudar outros usuários com a mesma dúvida.
Alef, ja tentei outros separadores e o resultado é o mesmo.
Tudo ocorre se eu tento separar o valor que vem do HAPI, se eu, por exemplo, coloco manualmente um valor para ele separar, ele funciona normalmente, exemplo no arquivo anexo ScreenShot2
Gabriel, testa a função enviada aí na resposta.
bom dia, a solução sugerida pelo Felipe resolveu o problema. Muito Obrigado por se dispor a ajudar
Bacana demais, Gabriel, como disse, não tinha visto o print que evidenciava a função funcionando dentro do backend. O importante é ter solucionado. Parabéns!