Estou tentando fazer uma integração GED x RM porém o RM não entende a formatação que eu coloco
O campo vem do formulário da seguinte maneira
“12.000,00”
Para adaptar a integração eu faço a seguinte tratativa no back-end
var pPRECOUNITARIO=hAPI.getCardValue(“PRECO___”+indexes[i]).replaceAll(“.”,“”).replaceAll(“,”,“.”);
pPRECOUNITARIO = parseFloat(pPRECOUNITARIO).toFixed(2);
Porém no RM ele coloca os dois zeros para frente e fica da seguinte forma
“1200000.0000”
Alguém sabe como fazer para o RM entender que o que tem depois da virgula são os centavos?
Tem que ver como o seu RM está configurado para WS.
Aqui enviamos com a vírgula sendo o separador para centavos.
Pela descrição do seu problema parece que o seu RM também está configurado pra receber vírgula como separador de centavos.
Olá,
Essa conversão você está fazendo no fluig?
O método replaceAll não funciona no Javascript do fluig do lado do servidor.
Tente o seguinte:
var pPRECOUNITARIO=hAPI.getCardValue(“PRECO___”+indexes[i]).replace(/\./g, '').replace(/,/g, '.'));
Apanhei bastante com isso, sem contar métodos Javascript que dão conflito com métodos de classes Java.
1 curtida
Mais uma coisa:
pPRECOUNITARIO = parseFloat(pPRECOUNITARIO).toFixed(2);
Nesse trecho você está convertendo novamente para string, é isso mesmo que você quer fazer?
Na verdade o que eu queria com isso era converter para float
Você chegou a tentar conforme eu falei?
Eu ainda forçaria a conversão para string concatenando com uma string vazia conforme abaixo:
var pPRECOUNITARIO = (hAPI.getCardValue("PRECO___" + indexes[i]) + '').replace(/\./g, '').replace(/,/g, '.'));
pPRECOUNITARIO = parseFloat(pPRECOUNITARIO);
Sim sim, e funcionou certinho. Muito obrigado!