Olá!
A configuração do fast está conforme imagem em anexo, não mexi em nada, está no padrão.
Um detalhe interessante é que tenho dois cenários:
1- Criando em tempo de design e rodando a aplicação, o relatório exibe normalmente, respeitando as casas decimais.
2- Criando os componentes em tempo de execução é que ocorre o erro ao formatar somente os itens da nota, totais ficam corretos.
Estou criando em runtime assim:
ACBrNFe:= TACBrNFe.Create(Nil);
ACBrNFeDANFCEFR:= TACBrNFeDANFCEFR.Create(Nil);
ACBrNFeDANFCEFR.MargemInferior:=0;
ACBrNFeDANFCEFR.MargemSuperior:=0;
ACBrNFeDANFCEFR.MargemEsquerda:=0;
ACBrNFeDANFCEFR.MargemDireita :=0;
//esse bloco coloquei depois de ver a sua sugestão
ACBrNFeDANFCEFR.CasasDecimais.Formato:= tdetInteger;
ACBrNFeDANFCEFR.CasasDecimais.MaskqCom := ',0.00';
ACBrNFeDANFCEFR.CasasDecimais.MaskvUnCom:= ',0.00';
ACBrNFeDANFCEFR.CasasDecimais.qCom := 2;
ACBrNFeDANFCEFR.CasasDecimais.vUnCom:= 2;
// fim bloco sugestão
ACBrNFe.DANFE:= ACBrNFeDANFCEFR;
if (cFast.Length = 0) or (not FileExists(cFileFast+'NFCe\'+cFast+'.fr3') ) then
cFast:= 'DANFeNFCe5_00';
if cFileLogo.Length > 0 then
ACBrNFeDANFCEFR.Logo:= cFileLogo;
ACBrNFeDANFCEFR.FastFile := cFileFast+'NFCe\'+cFast+'.fr3';
ACBrNFe.NotasFiscais.Clear;
ACBrNFe.NotasFiscais.LoadFromString(cData);
ACBrNFe.DANFE.PathPDF := cFilePDF ;
ACBrNFe.NotasFiscais.ImprimirPDF;
FreeAndNil(ACBrNFe);
Quando faço faço via aplicação, já crio os componentes no design, associo e faço o último trecho do código assim:
ACBrNFe1.NotasFiscais.Clear;
ACBrNFe1.NotasFiscais.LoadFromString(cData);
ACBrNFe1.DANFE.PathPDF := cFilePDF ;
ACBrNFe1.NotasFiscais.ImprimirPDF;
Nos dois cenários estou usando o mesmo arquivo fast que peguei no svn.
Estou usando a mesma lógica para NFe e NFCe. Em ambos os casos está acontecendo o mesmo problema.