Ir para conteúdo
  • Cadastre-se

dev botao

Dúvida Acbrnfedanfcefortes - Tamanho Da Página


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

Recommended Posts

Bom dia,

 

me surgiu uma dúvida com relação à impressão da NFC-e com o componente ACBRNFeDANFCeFortes...

 

Estou verificando a possibilidade de implantar meu sistema (juntamente com o ACBrNFeMonitor) em um cliente, e ele já tem outro sistema que imprime a NFC-e usando uma impressora laser, com papel A4 cortado ao meio, ou seja 105 mm de largura e 297 mm de altura. Por incrível que pareça, funciona... :-)

 

Gostaria de saber se existe essa possibilidade? Definir o tamanho do papel (não achei essas propriedades) no componente, a fim de tentar encaixar a impressão com mais perfeição ao papel, pois fiz alguns testes e o ACBrNFeMonitor imprimiu o QRCode na página 2, sendo que ainda tinha espaço na página 1...

 

Att

Ricardo

Link para o comentário
Compartilhar em outros sites

Bom dia,

 

implementei aqui para mim a propeidade PapelAltura no TACBrNFeDANFCeFortes.

property PapelAltura: Integer read FPapelAltura write FPapelAltura default 0;

Mais tarde vou enviar ao cliente um "bacalhau" para aprovação da impressão.

 

Como eu tinha o mesmo XML que testamos outro dia, testei e acho que vai dar certo.

 

Outro ponto no que mexi unit ACBrDANFCeFortesFr, foi na procedure rlVendaBeforePrint,

onde calcula o tamanho da página em pixels e depois converte para milimetros:

  if (ACBrNFeDANFCeFortes.PapelAltura > 0) then
  begin
    rlVenda.PageSetup.PaperHeight := ACBrNFeDANFCeFortes.PapelAltura;
  end
  else
  begin
    // Calculando o tamanho da Página em Pixels //
    TotalPaginaPixel := ...

Espero que esta ideia seja aprovada como uma contribuição para o projeto ACBr,

qualquer outra ideia ou sugestão será bem vinda...

 

 

Att

Ricardo

ACBrDANFCeFortesFr.pas

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • 3 semanas depois ...

oi...

 

infelizmente não tenho muito acesso ao cliente,

como é um estabelecimento no interior da minha cidade,

eu acabei deixando ele me dar retorno para testar a impressão, e ainda não me ligou... :-(

 

Nesse outro tópico abaixo, tinha outro usuário que estava com problema na impressão da NFCe Fortes em A4,

e eu postei uma resposta citando esta ideia de configurar a altura da página, e um anexo

que é justamente o "bacalhau" compilado que eu gerei para testar com o meu cliente...

 

 

Att

Ricardo

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

Prezados, boa tarde!

 

Estou finalizando a implementação da NFCe, e quanto a impressão em A4 estava saindo cortada nas margens.

 

Seguindo a solicitação do Ricardo complementei e adicionei aos fontes do danfe em fortes as definições de margens, comprimento e largura da página.

 

Ajustei também a palavra "Ãrea" no relatório.

 

Vejam se convém  adicionar aos fontes.

 

Att,

 

Wilson.

ACBrNFeDANFEClass.pas

ACBrDANFCeFortesFr.pas

post-1004-0-18625600-1433527276.jpg

ACBrNFeDANFEClass.pas

ACBrDANFCeFortesFr.pas

post-1004-0-18625600-1433527276.jpg

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Olá,

voltei ao fórum aqui para comentar...

botei em produção a impressão da danfe da NFC-e,

usando o ACBrNFeMonitor com a minha alteração no componente ACBRNFeDANFCeFortes,

para definir a altura do papel, conforme descrevi na abertura do tópico...

 

Inclusive eu adicionei estas propriedades "Margens ajustáveis" e "altura da página"

aqui pra configurar no ACBrNFeMonitor (abas DANFe e NFC-e)

 

Eu vi que teve outro colega do fórum também andou implementando

a mesma propriedade, mas não achei mais onde eu li isso...

 

Pensando em evitar futuros transtornos, eu gostaria de saber

se essa propriedade será disponibilizada no componente?

 

Att

Ricardo 

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Prezados, boa tarde!

 

Estou finalizando a implementação da NFCe, e quanto a impressão em A4 estava saindo cortada nas margens.

 

Seguindo a solicitação do Ricardo complementei e adicionei aos fontes do danfe em fortes as definições de margens, comprimento e largura da página.

 

Ajustei também a palavra "Ãrea" no relatório.

 

Vejam se convém  adicionar aos fontes.

 

Att,

 

Wilson.

ACBrNFeDANFEClass.pas

ACBrDANFCeFortesFr.pas

post-1004-0-18625600-1433527276.jpg

ACBrNFeDANFEClass.pas

ACBrDANFCeFortesFr.pas

post-1004-0-18625600-1433527276.jpg

wilson_jr, poderia por favor disponibilizar esses arquivos novamente? Não estou conseguindo fazer o download, e já tentei de tudo aqui e não consegui imprimir o danfe em A4. Ajudaria muito!

Link para o comentário
Compartilhar em outros sites

 Olá Clerison, Não possuo mais estes fontes, pois foi antes de atualizar para o trunk2. Por enquanto tenho dois clientes imprimindo em impressoras térmicas Epson e um em A4 e está normal. O que está acontecendo que não consegue imprimir?

wilson_jr, a única forma que consegui imprimir foi alterando diretamente o dfm onde do danfe do fortes. Tive que setar o papel para A4. Sem isso sempre dava problema de "ilegal media size" na impressora.

 

Sobre o Trunk2, está estável para NFC-e? Seria uma boa idéia migrar?

Link para o comentário
Compartilhar em outros sites

  • 1 ano depois...

Bom dia Pessoal.

Estou necessitando realizar essa alteração. Meu problema não é exatamente esse. Pra mim, o comprimento do doc fica fixado (temporariamente) na impressora em 29,7cm logo após a impressão da NFCe. O problema é que o arquivo seguinte acaba pegando tal formatação, e então não imprime por completo (apenas 29,7cm). Se eu realizo a impressão desse mesmo documento em outro ponto do sistema, e não em conjunto com a impressão da acbr, a impressão sai normal. Portanto, já descartamos qualquer configuração de formulario de impressão, drivers, etc, e sabemos que o problema está ali, na impressão da nfce.

Porém, gostaria de implementar tudo isso através de um helper, visto que tal propriedade não está acessível a nível do componente. Assim, não necessitamos alterar o código a cada atualização da acbr. A menos que tenha sido realizada alguma modificação.

Alguém saberia como posso implementar desse modo? Ou alguma outra alternativa para não realizar alterações no fonte da ACBr?

Grato pela atenção.

Link para o comentário
Compartilhar em outros sites

9 horas atrás, felipetomm disse:

Pra mim, o comprimento do doc fica fixado (temporariamente) na impressora em 29,7cm logo após a impressão da NFCe. O problema é que o arquivo seguinte acaba pegando tal formatação, e então não imprime por completo (apenas 29,7cm). Se eu realizo a impressão desse mesmo documento em outro ponto do sistema, e não em conjunto com a impressão da acbr, a impressão sai normal. Portanto, já descartamos qualquer configuração de formulario de impressão, drivers, etc, e sabemos que o problema está ali, na impressão da nfce.

Corrigindo. O problema não era temporariamente, e sim, se extendia até o encerramento da aplicação.

Para tal, descobrimos que a informação temporária é resolvida somente após executar a chamada da seguinte linha:

Printer.Create;

Como o procedimento que executamos utiliza do objeto Printer, o mesmo acabava pegando o tamanho fixado após a impressão do cupom.

Com a linha acima, o objeto é recriado com as definições padrões das impressoras do sistema.

Acreditamos ainda não ser a melhor prática, mas foi a única que atendeu ao problema, sem a necessidade de realizar alterações no fonte.

Sugestões são bem vindas.

Link para o comentário
Compartilhar em outros sites

2 horas atrás, Juliomar Marchetti disse:

Sugere alguma correção no componente? se sim anexe o código e detalhe.

Bom dia Juliomar.

Alterei e fiz testes aqui. Apenas adicionei a uses "Printers" e a linha "Printer.Create;", conforme segue abaixo:

procedure TNotasFiscais.Imprimir;
begin
  VerificarDANFE;
  TACBrNFe(FACBrNFe).DANFE.ImprimirDANFE(nil);
  Printer.Create;
end;

Não tenho muito conhecimento com o componente. Acredito que tal ajuste tenha um lugar mais apropriado.

Esperamos que seja de ajuda.

Segue anexo o arquivo com a alteração.

ACBrNFeNotasFiscais.pas

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Reverti o commit...

Não é correto ACBrNFeNotasFiscais.pas depender de "Printers"...

e da maneira que está implementado, parece gerar "memory leak"

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Juliomar  e demais,

O problema parece ser o fato do Gerador de Relatórios estar memorizando o tamanho da página do último relatório emitido, correto ?

Qual o Gerador de Relatórios ? (Fortes ?)

Como posso reproduzir o problema ? ( de preferência usando os Demo do ACBr..)

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Se alguém passar um passo a passo, de como reproduzir o problema, usando o Demo (ou pelo menos um Trecho de código)... Eu posso investigar o problema...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

Boa tarde Daniel, Juliomar. Desculpem a demora em responder. Estava realizando mais alguns testes.

18 horas atrás, Daniel Simoes disse:

Não é correto ACBrNFeNotasFiscais.pas depender de "Printers"...

e da maneira que está implementado, parece gerar "memory leak"

Concordo.. Acredito que o ideal mesmo, que foi nossa tentativa inicial, é verificar qual a chamada que deixa essa configuração para a aplicação.

3 horas atrás, Daniel Simoes disse:

O problema parece ser o fato do Gerador de Relatórios estar memorizando o tamanho da página do último relatório emitido, correto ?

Correto. Acreditamos que seja esse o problema.

3 horas atrás, Daniel Simoes disse:

Qual o Gerador de Relatórios ? (Fortes ?)

Sim.. estamos utilizando o fortes.

3 horas atrás, Daniel Simoes disse:

Como posso reproduzir o problema ? ( de preferência usando os Demo do ACBr..)

Estamos utilizando o pacote SynopsePDF, do framework mORMot para gerar os documentos (carnê de parcelas) que são impressos após o cupom.

Estou preparando um material para você poder realizar os testes no seu ambiente. Assim que estiver pronto, envio aqui em anexo.

Link para o comentário
Compartilhar em outros sites

  • Moderadores
55 minutos atrás, felipetomm disse:

Boa tarde Daniel, Juliomar. Desculpem a demora em responder. Estava realizando mais alguns testes.

Concordo.. Acredito que o ideal mesmo, que foi nossa tentativa inicial, é verificar qual a chamada que deixa essa configuração para a aplicação.

Correto. Acreditamos que seja esse o problema.

Sim.. estamos utilizando o fortes.

Estamos utilizando o pacote SynopsePDF, do framework mORMot para gerar os documentos (carnê de parcelas) que são impressos após o cupom.

Estou preparando um material para você poder realizar os testes no seu ambiente. Assim que estiver pronto, envio aqui em anexo.

Favor criar um novo post quando efetuar o retorno de seus testes

Grato

 

Equipe ACBr Henrique Leonardo
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Tecnólogo em processamento de dados

E-mail [email protected] - Skype : hleorj

Link para o comentário
Compartilhar em outros sites

  • hleorj locked this tópico
  • Este tópico foi criado há 2562 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.