Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Prezados, temos um processo de geração de DANFe em massa, e precisamos acelerar ele, tivemos um percalço no caminho e problemas com as Threads porque o FastReport precisa de duas configurações para funcionarem corretamente com Threads paralelas, mesmo pedindo para silenciar os diálogos o problema acontece, e ainda tem um segundo problema que é o cache interno do FastReport, fazendo que dentro de um range muito alto de documentos algumas DANFe ficassem com o mesmo conteúdo. 

Felizmente basta alterar duas propriedades para resolver o problema. 

// Desabilita todo e qualquer tipo de mensagem
frxReport.EngineOptions.SilentMode := True;
// Habilita o FR a trabalhar com multiplas threads com segurança
frxReport.EngineOptions.EnableThreadSafe := True;
// Desabilita o cache, que no caso de múltiplas threas pode dar conflito de conteúdo entre arquivos.
frxReport.EngineOptions.UseFileCache := false;

Segue os arquivos atualizados.

ACBrNFeDANFEFR.pas ACBrNFeDANFEFRDM.pas

  • Curtir 1

 www.datalider.com.br - [email protected] - Macgayver Armini

 

Postado (editado)
19 horas atrás, Juliomar Marchetti disse:

Boa tarde

pode ser que habilitando pare de funcionar para algumas pessoas pois senão me engano isso só serve no enterprise.

seria necessário testes para validar isso

No código está condicionado a uma variável estar True, e a versão testada foi a Emb Edition.

No help do componente, essa propriedade existe desde o FR4.

Na versão de teste de vocês, com vários ambientes diferentes, talvez pode acontecer  de algum não compilar por não existir em componentes antigos, ai seria o caso então, de condicionar também no ACBR.inc acredito.

Editado por Data Lider
Adição de informação

 www.datalider.com.br - [email protected] - Macgayver Armini

 

Postado

Segue os arquivos novamente, faltou adicionar a NFCe também. Olhando aqui a classe, se não quiserem implementar essa sugestão, pelo menos então se puderem deixar o objeto do tipo TACBrNFeFRClass em protected or public das classes TACBrNFeDANFEFR/TACBrNFeDANFCEFR para quem precisar dessa implementação.

 

bb.png

 

ACBrNFeDANFEFR.pas ACBrNFeDANFEFRDM.pas

  • Curtir 1

 www.datalider.com.br - [email protected] - Macgayver Armini

 

Postado (editado)
17 horas atrás, Juliomar Marchetti disse:

algum motivo pra isso?

image.png

Corrigi e subi.

caso ocorra problemas e houver relatos vou reverter

Não, erro meu mesmo. Obrigado!

Edição do Post:

Na verdade, eu não subiu a alteração para a NFC-e, ai ficou assim (igual ao primeiro), vou carregar aqui, e desculpa.

(TACBrNFeDANFCEFR) ficou sem o Thread Safe.

ACBrNFeDANFEFR.pas

Editado por Data Lider
complemento resposta

 www.datalider.com.br - [email protected] - Macgayver Armini

 

  • 4 meses depois ...
Postado

Pessoal,

 

Atualizei agora os fontes e tenho Fast Report 5 e está me dando mensagem de erro ACBrNFeDANFEFR1.ThreadSafe: Property ThreadSafe does not exist.

Alguma dica de como resolver isso pessoal?

 

Obrigado.

 

Araujo

Postado

Sim Juliano, sigo a tua recomendação desde sempre. Apaguei tudo e reinstalei.

Alias já fiz esse procedimento 2 x e recompilei tb o Fast Report.

Agora o que fiz foi reverter a versao para antes de outubro quando da tua atualização e vou testar na intenção de isolar o problema.

 

Postado

bom dia Juliomar,

Eu estou fora desde sexta acompanhando meu pai que esta hospitalizado. Por isso nao retornei.

Se puderes alterar o codigo ai serei grato, assim nao atraso o projeto, pois a equipe esta seguindo adiante com o projeto aqui.

Obrigado.

Araujo

  • Moderadores
Postado

A propriedade ThreadSafe é da classe TACBrNFeDANFEFR e não do FastReport.

Se está tendo o erro provavelmente os teus fontes do ACBr estão desatualizados, ou não reinstalou usando o ACBrInstall_Trunk2 pra recompilar os pacotes, ou tem fontes antigos do ACBr em algum lugar da máquina que estão sendo enxergados pelo Delphi.

Atualize os fontes e reinstale marcando a opção de apagar os arquivos antigos.

  • Obrigado 1
Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado

@BigWings, preciso na sua dedução... um programador alterou uma referencia ao ABCR e estava apontando para um codigo antigo.

Já revisaram tudo e está funcionando. 

Muito obrigado pela grande ajuda e otima semana para vocês. 

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