Por padrão, a transformação Java converte portas do tipo Decimal em tipos de dados duplos com uma precisão de 15. Se você deseja processar um tipo de dados Decimal com uma precisão maior que 15, ative a precisão alta para processar portas decimais, com a classe Java BigDecimal.
Quando você ativa a precisão alta, pode processar portas Decimais com precisão menor que 28 como o BigDecimal. A transformação Java converte os dados decimais com uma precisão maior que 28 para o tipo de dados Duplo. As expressões da transformação Java processam dados binários, inteiros, duplos e de string. As expressões da transformação Java não podem processar dados bigint.
Por exemplo, uma transformação Java tem uma porta de entrada do tipo Decimal que recebe um valor de 40012030304957666903. Se você ativar a precisão alta, o valor da porta é tratado conforme o exibido. Se você não ativar a precisão alta, o valor da porta é 4,00120303049577 x 10^19.
Se você ativar a precisão alta para uma transformação Java, ative-a também para a sessão que inclui a transformação Java. Se a precisão alta for ativada na Transformação Java e não na sessão, a sessão pode falhar com o erro a seguir:
[ERROR]Failed to bind column with index <index number> to datatype <datatype name>.