Ir para conteúdo
  • Cadastre-se

dev botao

ImprmirPDF com Fortes


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

Recommended Posts

Boa tarde, estou com dificuldades em imprimir pdf uma xml, sendo que o procedimento esta sendo feito em um web service desenvolvido em delphi, quando é feito em uma aplicação desktop não ocorre o erro..

 

erro que esta ocorrendo: A component named frlDANFeRLRetrato already exists

 

creio eu que seja algo no create da classe do DanfeRL porem não to conseguindo evoluir , por favor peço que alguem me ajude nesse problema ..

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...
  • Moderadores
Em 18/04/2016 at 15:18, Valdir Junior_24195 disse:

Boa tarde, estou com dificuldades em imprimir pdf uma xml, sendo que o procedimento esta sendo feito em um web service desenvolvido em delphi, quando é feito em uma aplicação desktop não ocorre o erro..

 

erro que esta ocorrendo: A component named frlDANFeRLRetrato already exists

 

creio eu que seja algo no create da classe do DanfeRL porem não to conseguindo evoluir , por favor peço que alguem me ajude nesse problema ..

Você cria o componente de DANFE em tempo de execução?

Se sim não está destruindo ele.

 

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

Bom dia Régys,

No meu caso o componente fica criado num DataModule que é instanciado na criação do form que controla as emissões e é destruído quando este também é destruído.

Outra coisa que não consegui determinar foi o cenário que leva à esse erro, me parece "aleatório" (claro que isso não existe).

Link para o comentário
Compartilhar em outros sites

  • 8 meses depois ...

Estou tendo o mesmo problema.
"A component named frlDANFeRLRetrato already exists" quando chamo o imprimirdanfepdf.

Alguém tem uma ideia do que pode ser ?


var NFe_ : TACBRNFe;
    Danfe_ : TACBrNFeDANFeRL;
begin
  try
    try
      NFe_   := TACBrNFe.Create(nil);
      Danfe_ := TACBrNFeDANFeRL.Create(nil);
      Danfe_.Impressora := GetDefaultPrinterName;
      Danfe_.PathPDF    := caminho;
      Danfe_.TipoDANFE  := tiRetrato;
      Danfe_.MostrarPreview := False;
      NFe_.DANFE := Danfe_;
      NFe_.NotasFiscais.LoadFromString(XML,false);
      NFe_.Configuracoes.Arquivos.PathSalvar := caminho;
      Danfe_.ImprimirDANFEPDF;
      result := 'OK';
    except
      on e:exception do
        result := e.Message;
    end;
  finally
    Danfe_.Free;
    NFe_.Free;
  end;

 

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • 7 meses depois ...
  • 4 meses depois ...
  • Moderadores
5 horas atrás, evandromira disse:

Conseguiram resolver esse problema? me deparei com isso tbm e não achei solução!

Vou tentar com o ACBr_NFeDanfeFR

Qual o erro?

se rodar o demo da nf-e ocorre o mesmo? mensagem que exibe?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

8 horas atrás, Juliomar Marchetti disse:

Qual o erro?

se rodar o demo da nf-e ocorre o mesmo? mensagem que exibe?

Oi Juliomar

o erro é o seguinte: A component named frlDANFeRLRetrato already exists 

Ocorre quando aciona o comando Acbrnfedanferl.imprimirpdf em uma aplicação unigui por exemplo, onde há a necessidade de geração do pdf para exibição ao usuário no lado cliente.

Em uma aplicação normal desktop, como por exemplo o demo do acbr, claro que funciona normal.

O problema relatado pelo pessoal dos posts acima, e o meu, é quando o componente é colocado em um datamodule de uma aplicação que usa sessões, como um Datasnap Server ou o Mainmodule do UNIGUI(meu caso).

No caso da NFC-e o ACBrNFeDANFCeFortes funciona normalmente neste cenário gerando o pdf,, por isso acredito que não seja nada relacionado ao Fortes.

O pessoal aqui não relatou se houve alguma solução, por isso postei...

Vou testar com o Fastreport e coloco o resultado aqui.

Abraço

 

Link para o comentário
Compartilhar em outros sites

Em 06/11/2017 at 10:09, Edcleyson de Souza disse:

Bom dia. Alguém conseguiu resolver esse problema? Acontece o mesmo problema quando tento utilizar o componente com framework UniGui.

 

14 horas atrás, Juliomar Marchetti disse:

Qual o erro?

se rodar o demo da nf-e ocorre o mesmo? mensagem que exibe?

No mainmodule do unigui substitui o Acbrnfedanferl(Fortesreport) pelo ACBrNFeDANFEFR(Fastreport) e deu certo!

 

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Boa Tarde

Caso alguém ainda precise, estava com esse mesmo erro no ImprimirPDF (Fortes) utilizando ISAPI, o erro acontece na NFe e NFCe

Comentei o trecho abaixo na unit ACBrNFeDANFeRLRetrato e resolveu, lembrando que na versão desktop não apresentava esse erro.

if FNumCopias > 0 then
    RLPrinters.RLPrinter.Copies := FNumCopias;
 { else
    RLPrinters.RLPrinter.Copies := 1;}

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

  • 4 semanas depois ...
  • 1 mês depois ...

Bom dia,

Para quem usa o Framework do UniGui e se encontrava com o mesmo problema achei uma solução.

No arquivo ACBrNFeDANFeRLClass.pas na procedure TACBrNFeDANFeRL.ImprimirDANFEPDF(NFE : TNFe = nil); 

Pela linha 315 terá o seguinte código:

case TipoDANFE of
    tiRetrato      : frlDANFeRL := TfrlDANFeRLRetrato.Create(self);
    tiPaisagem     : frlDANFeRL := TfrlDANFeRLPaisagem.Create(self);
    tiSimplificado : frlDANFeRL := TfrlDANFeRLSimplificado.Create(self);
  else
    frlDANFeRL := TfrlDANFeRLRetrato.Create(self);
  end;

Alterar para o código, a palavra (self) para (nil), conforme consta abaixo:

case TipoDANFE of
    tiRetrato      : frlDANFeRL := TfrlDANFeRLRetrato.Create(nil);
    tiPaisagem     : frlDANFeRL := TfrlDANFeRLPaisagem.Create(nil);
    tiSimplificado : frlDANFeRL := TfrlDANFeRLSimplificado.Create(nil);
  else
    frlDANFeRL := TfrlDANFeRLRetrato.Create(nil);
  end;

Alterando o self pelo nil que esta entre os parênteses.

Já aproveitando, para quem gostaria de consultoria sobre o UniGui, mandar um e-mail para [email protected]

Editado por shida
Link para o comentário
Compartilhar em outros sites

27 minutos atrás, shida disse:

Bom dia,

Para quem usa o Framework do UniGui e se encontrava com o mesmo problema achei uma solução.

No arquivo ACBrNFeDANFeRLClass.pas na procedure TACBrNFeDANFeRL.ImprimirDANFEPDF(NFE : TNFe = nil); 

Pela linha 315 terá o seguinte código:

case TipoDANFE of
    tiRetrato      : frlDANFeRL := TfrlDANFeRLRetrato.Create(self);
    tiPaisagem     : frlDANFeRL := TfrlDANFeRLPaisagem.Create(self);
    tiSimplificado : frlDANFeRL := TfrlDANFeRLSimplificado.Create(self);
  else
    frlDANFeRL := TfrlDANFeRLRetrato.Create(self);
  end;

Alterar para o código, a palavra (self) para (nil), conforme consta abaixo:

case TipoDANFE of
    tiRetrato      : frlDANFeRL := TfrlDANFeRLRetrato.Create(nil);
    tiPaisagem     : frlDANFeRL := TfrlDANFeRLPaisagem.Create(nil);
    tiSimplificado : frlDANFeRL := TfrlDANFeRLSimplificado.Create(nil);
  else
    frlDANFeRL := TfrlDANFeRLRetrato.Create(nil);
  end;

Alterando o self pelo nil que esta entre os parênteses.

Já aproveitando, para quem gostaria de consultoria sobre o UniGui, mandar um e-mail para [email protected]

Bom Dia,

Estava com o mesmo problema e realizei as alterações acima e funcionou perfeitamente.

Obrigado

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

  • Este tópico foi criado há 2054 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.