Ir para conteúdo
  • Cadastre-se

dev botao

DANFe - falha no layot da impressão com fortes report


jeaanca
Ver Solução Respondido por EMBarbosa,
  • Este tópico foi criado há 1715 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Na impressão da NF-e, nos dados dos produtos / serviços, de acordo com a quantidade de registros as linha são coloridas com cores alternadas. porém o campo estava sendo pintado ultrapassando a largura máxima do "detail". segue o print do erro: 
image.png.afdc5f00ce09a56efd701caba924e7d2.png

Para correção desse problema realizei algumas modificações nos arquivos (ACBrNFeDANFeRLRetrato.pas, ACBrNFeDANFeRLRetrato.dfm), segue imagem:
image.png.eeaf5157e1b13dd2fc2c8ccbf6c9cac6.png

Não sei se já foi feito alguma correção nesse sentido, mas estou anexando os arquivos com minhas alterações.

Obrigado.

ACBrNFeDANFeRLRetrato.dfm ACBrNFeDANFeRLRetrato.pas

  • Curtir 2
  • Obrigado 2
Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia,

Obrigada pela contribuição, adicionada para validação.

Att.

  • Curtir 3
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Consultores
Em 05/07/2019 at 09:27, jeaanca disse:

Não sei se já foi feito alguma correção nesse sentido, mas estou anexando os arquivos com minhas alterações.

Obrigado.

ACBrNFeDANFeRLRetrato.dfm 193 kB · 0 downloads ACBrNFeDANFeRLRetrato.pas 69 kB · 0 downloads

Muito obrigado pela contribuição.
Fiz a implementação baseada nela.
Subi as alterações para o SVN na Revisão  17326.
Pelo que vi está tudo certo.
Queira por favor atualizar, testar e reportar qualquer problema.

Mais uma vez obrigado.

 

  • Curtir 2

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Eu atualizei e percebi que as linhas não estavam sendo pintadas com cores alternadas.

Verifiquei que você adicionou o seguinte código no BeforePrint do rlbItens na unit ACBrNFeDANFeRLRetrato:

     if fpDANFe.AlternaCoresProdutos then
    begin
        FundoItem.Height  := rlbItens.Height;
        FundoItem.Color   := fpCorDestaqueProdutos;
        FundoItem.Visible := not (FundoItem.Visible); // o problema está nessa linha
    end;


mas esse código já está adicionado no evento AfterPrint da seguinte forma:

FundoItem.Visible := not (FundoItem.Visible) and fpDANFe.AlternaCoresProdutos;


Ou seja quando a propriedade AlternaCoresProdutos está marcada como True ele sempre será pintado, porque quando o evendo BeforePrint marca exibição como False o próximo evento a ser executado marca a exibição como True.

Para corrigir essa falha eu removi essa linha do evento BeforePrint:
  FundoItem.Visible := not (FundoItem.Visible);

o Código ficou da seguinte forma na parte final do método rlbItensBeforePrint:

  if fpDANFe.AlternaCoresProdutos then
  begin
    FundoItem.Height  := rlbItens.Height;
    FundoItem.Color   := fpCorDestaqueProdutos;
  end;

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
2 horas atrás, jeaanca disse:

Eu atualizei e percebi que as linhas não estavam sendo pintadas com cores alternadas

hmm acho que enviei o arquivo incorreto. Vou verificar.

  • Curtir 2

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution
18 horas atrás, jeaanca disse:

Para corrigir essa falha eu removi essa linha do evento BeforePrint:
  FundoItem.Visible := not (FundoItem.Visible);

o Código ficou da seguinte forma na parte final do método rlbItensBeforePrint:

Acabei de enviar ao SVN uma correção nesse código. Revisão 17332.

Todo o código da alternação de cores agora fica apenas no rlbItensBeforePrint. Isso deve facilitar verificações futuras.

Fiz alguns testes aqui e parece ok. Mas, por favor, queira atualizar, testar e reportar caso encontre algum problema.

Mais uma vez, obrigado pelas sugestões.

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1715 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.

The popup will be closed in 10 segundos...