Ir para conteúdo
  • Cadastre-se

dev botao

ACBrNFeDANFCeFortesA4 não exibe diálogo para selecionar impressora


Ver Solução Respondido por andreiluis,

Recommended Posts

Postado

Boa tarde,

Segue trecho do meu código, mesmo setando MostraSetup como True, não traz o diálogo da impressora. Testei com o ACBrNFeDANFCeFortes "normal" e o diálogo é exibido corretamente. Não encontrei onde está a versão do componente, a data da unit ACBrDANFCeFortesFrA4.pas é de 04/05/2023.

 

Tem mais alguma propriedade para setar para o diálogo ser exibido na DANFE em A4?

   dm.ACBrNFe1.DANFE := dm.ACBrNFeDANFCeFortesA41;
   dm.ACBrNFeDANFCeFortesA41.MostraSetup := True;
   dm.ACBrNFe1.DANFE.MostraSetup := True;

   dm.ACBrNFe1.NotasFiscais.Imprimir;

 

Grato,

Andrei

  • Solution
Postado

Então, achei o problema, acho:

ACBrDANFCeFortesFrA4.pas

RLLayout.PrintDialog := FACBrNFeDANFCeFortesA4.MostraPreview;

Aqui não deveria ser MostraSetup? Alterei e funcionou aqui.

  • Curtir 1
  • Consultores
Postado

Boa tarde!

Muito obrigado pela contribuição.

Por favor, disponibilize o .pas alterado para que possamos analisar e disponibilizar no SVN.

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

  • Consultores
Postado

Obrigado pela contribuição, em breve será validada para possível inclusão ao svn #TK-4769

  • Curtir 1
Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

  • 1 ano depois...
  • Consultores
Postado

Bom dia @andreiluis,

Primeiramente lhe peço desculpas pela demora em avaliar a sua contribuição.

Segundo o arquivo que você anexou não esta mais disponível.

Sendo assim não tenho como saber em qual linha você incluiu o código que altera o valor de PrintDialog.

Mas analisando a unit em questão temos:

      TDFeReportFortes.AjustarReport(RLLayout, FACBrNFeDANFCeFortesA4);

Observe que ele chama a procedure AjustarReport passando como parâmetro o RLLayout FACBrNFeDANFCeFortesA4.

Essa procedure esta definida em na unit ACBrDFeReportFortes, onde encontramos:

class procedure TDFeReportFortes.AjustarReport(FReport: TRLReport; AConfig: TACBrDFeReport);
begin
  FReport.ShowProgress := AConfig.MostraStatus;
  FReport.PrintDialog := AConfig.MostraSetup and (not AConfig.MostraPreview);
  (...)
end;

O valor de PrintDialog vai ser True se MostrarSetup for True e MostrarPreview for False.

Eu acredito que essa condição esteja correta, pois se MostrarPreview for True você tem como escolher a impressora, por outro lado se ela for False, a impressão seria imediata, mas se MostrarSetup for True vai ser apesentado a tela para escolher a impressora.

Com a sua alteração o valor de MostrarSetup fica sem utilidade e quando MostrarPreview estiver com o valor True, teremos na tela o preview do DANFE e a tela solicitando a escolha da impressora.

Por favor comente a linha que você acrescentou e depois faça testes atribuindo valores True e False para as propriedades MostrarSetup e MostrarPreview e veja os resultados.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • 3 semanas depois ...
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.