Ir para conteúdo
  • Cadastre-se

dev botao

Margens DANFe Fastreport com FastReport 6.7. ignoram alterações correção(sugestão)


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

Recommended Posts

Encontrei um problema com o Fastreport  6.7 e a impressão do DANFe

 

Não acontece no fast 6.5  e 6.6

 

Quando configura as margens e manda visualizar o DANFe as margens são visualizadas corretamente.

Mas ao clicar em imprimir o Fast volta as margens para o padrão.

Se mandar imprimir direto as margens são ignoradas também.

 

Unit: ACBrNFeDANFEFRDM

Procedimento: AjustaMargensReports

Não funciona se usar frxReport.ShowPreparedReport

 

Fiz alteração no procedimento  AjustaMargensReports

E ao invés de chamar AjustaMargensReports mudei para chamar

   frxReport.ShowReport(true)

 

Ainda não testei no CTe mas como os métodos são iguais provavelmente ira dar o mesmo problema

So acontece com Fastreport 6.7 

Usei  Delphi 10.3

 

procedure TACBrNFeFRClass.AjustaMargensReports;

var

  Page: TfrxReportPage;

  I: Integer;

begin

  //não funciona com frxReport.ShowPreparedReport e Fastrepor 6.7

{  for I := 0 to (frxReport.PreviewPages.Count - 1) do

  begin

    Page := frxReport.PreviewPages.Page;

    if (DANFEClassOwner.MargemSuperior > 0) then

      Page.TopMargin := DANFEClassOwner.MargemSuperior;

    if (DANFEClassOwner.MargemInferior > 0) then

      Page.BottomMargin := DANFEClassOwner.MargemInferior;

    if (DANFEClassOwner.MargemEsquerda > 0) then

      Page.LeftMargin := DANFEClassOwner.MargemEsquerda;

    if (DANFEClassOwner.MargemDireita > 0) then

      Page.RightMargin := DANFEClassOwner.MargemDireita;

  end;

  }

  //10/06/2020  FastReport 6.7

  for I := 1 to (frxReport.PreviewPages.Count) do

  begin

   // Page := TfrxReportPage(frxReport.FindObject('Page'+IntToStr(i)));

    page := TfrxReportPage(frxReport.FindObject('Page'+IntToStr(i)));

    if page<>nil then

    Begin

      if (DANFEClassOwner.MargemSuperior > 0) then

        Page.TopMargin := DANFEClassOwner.MargemSuperior;

      if (DANFEClassOwner.MargemInferior > 0) then

        Page.BottomMargin := DANFEClassOwner.MargemInferior;

      if (DANFEClassOwner.MargemEsquerda > 0) then

        Page.LeftMargin := DANFEClassOwner.MargemEsquerda;

      if (DANFEClassOwner.MargemDireita > 0) then

        Page.RightMargin := DANFEClassOwner.MargemDireita;

    End;

  end;

 

end;

ACBrNFeDANFEFRDM.pas

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

Retificando.

1)Se imprimir direto a minha mudança não funciona.

2)So funciona se dar preview primeiro e depois mandar imprimir

3)Se mandar salvar PDF também não funciona nem com a minha alteração nem com a AjustaMargensReports padrão do acbr.

 

Se não mudar as margens não ve o problema.

Esta acontecendo Fastreport 6.7 Delphi Xe3 e 10.3 , Nfe e Cte ( que ja testei)

Vou voltar para o Fastreport 6.6 e conferir.

 

Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado por reportar.

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

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á 1380 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.