Ir para conteúdo
  • Cadastre-se

dev botao

Erro na impressão do DANFE - EReadError(Stream read error)


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

Recommended Posts

  • Membros Pro

Boa Tarde !

  Já estava utilizando o Trunk2 e após efetuar um update na data de ontem estou com o seguinte problema:

  1) Ao executar a função AcbrNfe.NotasFiscais.Imprimir, apresenta a seguinte mensagem: RLNFe: Erro durante a preparação do relatório EReadError(Stream read error)

  Detalhes:

     - Em máquina local o problema não ocorre;

     - Ocorre em uma máquina de cliente;

     - Na maquina do cliente:

        - se executar a função utilizando os componentes o problema NÃO OCORRE.

        - se utilizar o ACBR-Demo o problema NÃO OCORRE;

        - Se criar variáveis locais para a execução da impressão o problema OCORRE. Isso já era utilizado anteriormente, conforme exemplo abaixo.

          var nQtdLin: Integer;
                localAcbrNfe: TACBrNFe;
                localACBrNFeDANFeRL: TACBrNFeDANFeRL;

          Begin

             localAcbrNfe := TACBrNFe.Create(nil);
             localACBrNFeDANFeRL := TACBrNFeDANFeRL.Create(nil);   

             localAcbrNfe.NotasFiscais.LoadFromString(DMDBE.cdsDOC002HIS.FieldByName('XMLRET').AsString,False);

              localAcbrNfe.DANFE := localACBrNFeDANFeRL;

              localAcbrNfe.NotasFiscais.Imprimir; // nesse ponto que ocorre o problema;

          End;

       - Executando o mesmo processo acima, porém para MDF-e o problema NÃO OCORRE.

     

Att.

Leandro Vignoto

     

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

  • Membros Pro

Boa Tarde !

   Me desculpe, não estou cobrando nada do que você está pensando (tipo assim, até agora ninguém viu), não foi essa a intenção.

   Inclusive tento ao máximo não abrir posts.

   Só coloquei mesmo para não ficar no esquecimento o post que a princípio possa parecer um erro. Fica tranquilo, responda quem puder sobre o assunto.

Att.

Leandro

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Leandro,

Porque você não coloca os componentes em um DataModule?

Em vez de ficar criando e destruindo toda hora que vai utilizar.

  • Curtir 1
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

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia, Italo..

Obrigado pelo retorno.

Anteriormente utilizava dessa forma que você falou, porém me deparei com a seguinte situação:

- Tenho processos que são executados de forma independente. Exemplo: Envio para sefaz, impressão de documentos, envio para clientes... etc. Se eu utilizar somente um componente no DM as informações carregadas no componente poderão entrar em conflito, pois posso iniciar um processo de autorização e ao mesmo tempo disparar um processo de envio de e-mail de outro xml, por isso crio e elimino o componente dentro do processo que estou executando.

Att.

 

Leandro Vignoto

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa Noite !

  Continuando os testes, o problema final ocorre no seguinte ponto:

  procedure TfrlDANFeRLRetrato.InitDados;

  // Carrega logomarca
  if (FLogo <> '') then
  begin
    if FileExists (FLogo) then
     rliLogo.Picture.LoadFromFile(FLogo)
    else
    begin
      LogoStream := TStringStream.Create(FLogo);
      try
         rliLogo.Picture.Bitmap.LoadFromStream(LogoStream);
      finally
         LogoStream.Free;
      end;
    end;
  end;

  No meu caso a variável FLogo estava vindo com espaço em branco ' ', gerando o problema.

Att.

Leandro Vignoto

 

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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