Ir para conteúdo
  • Cadastre-se

dev botao

leaiute da NFe Ajuda


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

Recommended Posts

  • Membros Pro

boa tarde
estou com uma situação em um cliente e gostaria de solicitar ajuda.
isso que vou relatar só acontece nesse cliente
em outros esta normal inclusive emito ela em homologação em meu computador
e não tenho esse problema
devido a isso tenho certeza que esse problema não é do ACbr, mas estou pedindo ajuda por aqui
porque se alguem teve esse problema, vai poder me ajudar.
Em meu sistema quando vou emitir uma NFe, o cliente seleciona o pedido, insere os dados
da transportadora, e seleciona um botão de processar.
nesse momento o meu sistema faz as seguintes funções:

//Função que gera o XML
  GerarNFe(vAux);

//Função de assinatura do XML gerado
  ACBrNFe1.NotasFiscais.Assinar;

//Função de validação do XML gerado
  ACBrNFe1.NotasFiscais.Validar;
  
ACBrNFe1.NotasFiscais.ImprimirPDF;
com essa função meu sistema imprimi 2 vias conforme configurado, e automaticamente
gera o PDF.
e quando imprimi com essa função o leiaute da NFe sai cortado no lado esquerdo conforme anexo:
ACBrNFe1.NotasFiscais.ImprimirPDF.jpeg

*--------*

Mas eu tenho uma função também que pode ser impressa a NFe sem ser pelo PDF e sim selecionado
o xml da seguinte forma:

     OpenDialog1.Title := 'Selecione o XML da NFE';
     OpenDialog1.DefaultExt := '*.XML';
     OpenDialog1.Filter := 'Arquivos NFe XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*';
     OpenDialog1.InitialDir := ACBrNFe1.Configuracoes.Arquivos.PathNFe;

     if OpenDialog1.Execute then
     begin
          ACBrNFe1.NotasFiscais.Clear;
          ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName,False);

          ACBrNFe1.NotasFiscais.Imprimir;
     end;

quando eu faço essa função a NFe sai certinho no seu leiaute conforme anexo:
ACBrNFe1.NotasFiscais.Imprimir.jpeg

por favor alguem já teve esse problema?
poderia me orientar o que posso fazer?

obrigado.
paulinho
     

ACBrNFe1.NotasFiscais.Imprimir.jpeg

ACBrNFe1.NotasFiscais.ImprimirPDF.jpeg

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa tarde.

Qual componente está usando para impressão?

Como estão as configurações de margem do mesmo?

Att.

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

  • Membros Pro

boa tarde juliana. obrigado pelo retorno. acabei de detectar em um outro cliente a mesma situação. acredito que seja nessa função que esteja acontecendo isso:

ACBrNFe1.Enviar(vNumLote,True);

 

porque quando uso essa função sai certinho no danfe: ACBrNFe1.NotasFiscais.Imprimir;

uso o componente e as margem estão 0,7 para todos superior,inferior,esquerda,e direita.

mas já deixei padrão também e me dá o mesmo problema.

obrigado

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
1 hora atrás, Antonio Paulo Mangili disse:

uso o componente e as margem estão 0,7 para todos superior,inferior,esquerda,e direita.

Tentou aumentar a margem esquerda?

Sendo a margem em mm, tente um valor acima de 10.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
4 minutos atrás, BigWings disse:

Tentou aumentar a margem esquerda?

Sendo a margem em mm, tente um valor acima de 10.

essas margem que citei a voce ela funciona normalmente quando uso a função: ACBrNFe1.NotasFiscais.Imprimir;

mas quando uso a função: ACBrNFe1.Enviar(vNumLote,True); essa dá o problema. uso o mesmo componente para ambas as funçoes, pois é um formulário só. se voce atentar acima eu passei o passo a passo do acontecido. até achei não fosse a função, mas estou acredito que sim, pois estou entrando em contado com meus clientes e já são 3 que estão com esse problema.

1 minuto atrás, Antonio Paulo Mangili disse:

essas margem que citei a voce ela funciona normalmente quando uso a função: ACBrNFe1.NotasFiscais.Imprimir;

mas quando uso a função: ACBrNFe1.Enviar(vNumLote,True); essa dá o problema. uso o mesmo componente para ambas as funçoes, pois é um formulário só. se voce atentar acima eu passei o passo a passo do acontecido. até achei não fosse a função, mas estou acredito que sim, pois estou entrando em contado com meus clientes e já são 3 que estão com esse problema.

ja usei 5,1 6 8 8 nessa sequencia no componente, mas sem sucesso.

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Você notou diferença na visualização ao alterar as margens?

Deve ter algo de errado na tua rotina, que não está configurando as margens quando usa o método ACBrNFe1.Enviar. No componente não existe diferença entre a impressão que é chamada no final do método de envio, e a impressão chamada direto pelo método NotasFiscais.Imprimir.

Se possível faça teste com o programa exemplo do componente, se o problema ainda ocorrer, informe o passo a passo pra reproduzir.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
3 minutos atrás, BigWings disse:

Você notou diferença na visualização ao alterar as margens?

Deve ter algo de errado na tua rotina, que não está configurando as margens quando usa o método ACBrNFe1.Enviar. No componente não existe diferença entre a impressão que é chamada no final do método de envio, e a impressão chamada direto pelo método NotasFiscais.Imprimir.

Se possível faça teste com o programa exemplo do componente, se o problema ainda ocorrer, informe o passo a passo pra reproduzir.

essa diferença quem notou foi os meus clientes. Mas eu nunca alterei as margem. sempre deixei padrão 5,1 6,8,8 eu alterei agora para ver se resolvia o problema. e esse problema eu comecei a reparar, ou seja os meus clientes de 2 meses para cá. antes não acontecia. até achei que fosse impressora e já trocamos 2. Acho que não tem a necessidade de reproduzir no programa exemplo porque já uso essa função a muito tempo. relato a função a voce, porque quando uso essa: NotasFiscais.Imprimir. com as 2 margens dá certo, mas quando uso a função  ACBrNFe1.Enviar e que não pega as margem configurada no componente. eu não determino as margem em meu programa, deixo ela pegar direto no componente.

obrigado

1 minuto atrás, Antonio Paulo Mangili disse:

essa diferença quem notou foi os meus clientes. Mas eu nunca alterei as margem. sempre deixei padrão 5,1 6,8,8 eu alterei agora para ver se resolvia o problema. e esse problema eu comecei a reparar, ou seja os meus clientes de 2 meses para cá. antes não acontecia. até achei que fosse impressora e já trocamos 2. Acho que não tem a necessidade de reproduzir no programa exemplo porque já uso essa função a muito tempo. relato a função a voce, porque quando uso essa: NotasFiscais.Imprimir. com as 2 margens dá certo, mas quando uso a função  ACBrNFe1.Enviar e que não pega as margem configurada no componente. eu não determino as margem em meu programa, deixo ela pegar direto no componente.

obrigado

image.png.2193ca208cbae46a5544f8edb011f837.png

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Antônio,

Primeiramente, eu editei as suas postagens.

Não precisa citar o que você escreveu na anterior, basta editar ela e acrescentar o que você esqueceu de colocar.

Outra coisa, você sabia que o método Enviar é capaz de: Gerar o XML, Assinar, Validar, enviar para a SEFAZ a nota e se ela for autorizada imprimi o DANFE?

Se você executa o método Enviar, não faz nenhum sentido executar os métodos que você relacionou.

Outra coisa, o método ImprimirPDF não imprimi nada apenas gera o PDF do DANFE.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
4 minutos atrás, Italo Jurisato Junior disse:

Boa tarde Antônio,

Primeiramente, eu editei as suas postagens.

Não precisa citar o que você escreveu na anterior, basta editar ela e acrescentar o que você esqueceu de colocar.

Outra coisa, você sabia que o método Enviar é capaz de: Gerar o XML, Assinar, Validar, enviar para a SEFAZ a nota e se ela for autorizada imprimi o DANFE?

Se você executa o método Enviar, não faz nenhum sentido executar os métodos que você relacionou.

Outra coisa, o método ImprimirPDF não imprimi nada apenas gera o PDF do DANFE.

boa tarde italo e obrigado pelo retorno. sim eu sei que função:  método Enviar é capaz de: Gerar o XML, Assinar, Validar, enviar para a SEFAZ a nota e se ela for autorizada imprimi o DANFE?

faz tudo isso que voce falou. inclusive é a que eu uso, mas a função Imprimir eu não uso na mesma rotina. Eu uso somente quando eu tiver que imprimir outra via, e não quero acessar via PDF. e é ai que sai certo nas margem. me parece que estou com dificuldade de me expressar. e o metodo imprimirPDF eu também sei que só gera o PDF, pois uso a muito tempo já.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Antônio,

Realmente você não esta se expressando corretamente.

Vamos lá, quando o DANFE é impresso no papel através do método Enviar a margem esquerda é cortada ou esse problema ocorre quando você utiliza o método Imprimir?

Você tem uma única rotina de configuração do componente?

Se não tem, esta ai o problema.

Você deve estar configurando o componente do DANFE de forma diferente dependendo do método que esta utilizando.

Lembre-se que as margens tem que ser informadas em milímetro.

A minha sugestão é que na rotina de configuração do componente tenhas as linhas que configura as margens.

Eu prefiro configurar via código e não pelo Object Inspector.

 

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
48 minutos atrás, Italo Jurisato Junior disse:

Bom dia Antônio,

Realmente você não esta se expressando corretamente.

Vamos lá, quando o DANFE é impresso no papel através do método Enviar a margem esquerda é cortada ou esse problema ocorre quando você utiliza o método Imprimir?

Você tem uma única rotina de configuração do componente?

Se não tem, esta ai o problema.

Você deve estar configurando o componente do DANFE de forma diferente dependendo do método que esta utilizando.

Lembre-se que as margens tem que ser informadas em milímetro.

A minha sugestão é que na rotina de configuração do componente tenhas as linhas que configura as margens.

Eu prefiro configurar via código e não pelo Object Inspector.

 

bom dia italo. obrigado pelo retorno. Esse problema ocorre da margem cortar quando uso o metodo Enviar. Quando uso o metodo Imprimir não ocorre. Sim tenho uma unica rotina do componente. As configurações de margem esta configurado no Objject Inspector, para os dois metodos. Mas consegui resolver assim. inclusive se voce puder pode fechar o topico. No medoto Enviar, estou deixando como False para não imprimir, e depois se a NFe for autorizada, eu estou usando o metodo Imprimir, e depois o imprimirPDF, para gerar o PDF. Sendo assim eu resolvi meu problema. Muito obrigado a todos.

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

António,

Se a sua postagem vem logo em seguida da minha, não faz nenhum sentido você citar o que eu escrevi.

Como lhe disse, eu prefiro configurar via código e não via Object Inspector.

Outra coisa, no componente só existe um método Imprimir, sendo assim quando você passa o valor True no segundo parâmetro do método Enviar se a nota for autorizada o método Imprimir é executado.

Portanto não existe diferença em executar separado ou através do método Enviar.

Para confirmar o que estou lhe dizendo basta você analisar o código do componente.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

×
×
  • 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.