Quando alimento o valor do campo vProd com valores como 11,30 ou 12,50 automaticamente ao gerar o xml o ultimo zero a direita é removido.
Desta forma ao validar o xml recebo o retorno de falha na validação dos dados da seguinte forma: '11.3' VIOLATES PATTERN CONSTRAINT OF '0/0\.[0-9]{2}|[1-9]{1}{0-9}{0,12}(\.[0-9]{2})?THE ELEMENT {HTTP://WWW.PORTALFISCAL.INF.BR/NFE}VPROD WITH VALUE '11.3' FAILED TO PARSE
Se o valor passado for 11,32 ou 12,51 por exemplo funciona, pois assim ao gerar o xml continuo com duas casas decimais.
Suspeito de que o problema esteja na forma como estou alimentando o o vProd (Prod.vProd := DMCMovimentacao.cdsItemMovimentacaoVENPROD_VALOR.asfloat). Tentei utilizar a funcão formatfloat mas ela retorna uma string e o campo vProd assim como todos os outros que recebem valores são do tipo currency.
Já tentei de tudo, até alterar o xml após gerado, mas usar ao usar o comando ACBrNFe1.NotasFiscais.Valida o xml volta a ficar como o padrão sem as duas casas decimais no caso de o valor ser 11,30 por exemplo.
Se alguém puder ajudar ficarei grato.