Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3948 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

Pessoal,
 
Quando tentamos emitir um danfe referente a uma nf-e complementar recebemos uma mensagem de erro.
 
Erro esse causado quando a propriedade do Danfe.ImprimirDescPorc está setada como True.
 
Para resolver fiz uma alteração testando se o valor total dos produtos é maior que zero e setando o valor Danfe.ImprimirDescPorc := False quando não.
 
Caso seja do interesse do pessoal corrigir, localizei a linha do codigo ACBr:

if FImprimirDescPorc = True then  begin
    dPercDesc := (vDesc * 100) / vProd;
    cdsItens.FieldByName('VALORDESC').AsString :=
                    FormatFloat('###,###,###,##0.00', dPercDesc);
  end
else
  cdsItens.FieldByName('VALORDESC').AsString :=
                    FormatFloat('###,###,###,##0.00', vDesc);




Deveria ter um teste do tipo:


if FImprimirDescPorc = True then
  begin
    if vProd > 0 then
       dPercDesc := (vDesc * 100) / vProd
    else
       dPercDesc := 0;
    cdsItens.FieldByName('VALORDESC').AsString :=
                    FormatFloat('###,###,###,##0.00', dPercDesc);
  end
else
  cdsItens.FieldByName('VALORDESC').AsString :=
                    FormatFloat('###,###,###,##0.00', vDesc);

Editado por Rodrigo Alves
  • Este tópico foi criado há 3948 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.