Ir para conteúdo
  • Cadastre-se

dev botao

Dois Monitores rodando juntos


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

Recommended Posts

Posso manter no computador dois AcbrMonitor rodando ao mesmo tempo?

Gostaria de enviar os Comandos do SAT para o AbrMonitorPlus e os comandos da NFe no AcbrNfMonitor 2.0.9.03.1 - capicom.

Tentei isto, o CFe sai normalmente, mas ao enviar a NFe está dando erro INVALID ARGUMENT

Ao tirar do ar o PLUS roda a NFe normalmente...

Link para o comentário
Compartilhar em outros sites

O projeto NFe já ém bem antigo, teria que fazer alguns ajustes para funcionar. Na verdade queria mexer o mínimo possível para evitar "surpresas" em código legado...

A grande verdade é que estou com o prazo estourado com cliente ligando precisando colocar o SAT em produção pra ontem.

Mas se os 2 entrarem em conflito não vou ter opção... Você não recomenda os 2 rodando juntos?

Link para o comentário
Compartilhar em outros sites

Verdade, mas acabei descobrindo o problema....

O pau está nas NFe´s referenciadas. Quando referencio um ECF faço da seguinte forma:

[NFRef001]
Tipo=ECF
ModECF=2D
nECF=003
nCOO=000252

Como fazer para referenciar um CFe em uma NFe?

Mas mesmo assim vou seguir seu conselho e usar o PLUS para tudo

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Para rodar ambos os monitores é importante configurar arquivos de entrada e saída diferentes para TXT ou portas diferentes para TCP

sobre o NFe referenciada ao SAT, veja esse link

www.spedbrasil.net/m/discussion?id=2159846%3ATopic%3A852332

Editado por Daniel Simoes
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • 5 meses depois ...
  • Fundadores

Geralmente o ACBrMonitor é instalado de forma Local, em cada máquina...

Se você tem situações de "concorrência", é melhor continuar mantendo 2 ACBrMonitores

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Vocês estão falando em integração por troca de arquivo txt (EntSai)

E se for por TCP/IP? O componente não controla comunicação simultânea?

Tenho pensado em melhorar o ambiente do cliente e disponibilizar os recursos do componente com outras maquinas na rede. Acho que o melhor ambiente seria instalação única, até porque o Certificado Digital geralmente está instalado na mesma maquina onde está o Acbr.

Me desculpem se estou falando besteira.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

SIM, e porque não seria ??  Você não está conseguindo executar 2 Monitores na mesma máquina ?

25 minutos atrás, Mauricio Bragaia disse:

Vocês estão falando em integração por troca de arquivo txt (EntSai)

E se for por TCP/IP? O componente não controla comunicação simultânea?

Tenho pensado em melhorar o ambiente do cliente e disponibilizar os recursos do componente com outras maquinas na rede. Acho que o melhor ambiente seria instalação única, até porque o Certificado Digital geralmente está instalado na mesma maquina onde está o Acbr.

Me desculpem se estou falando besteira.

Sim, cada conexão é uma nova thread... mas o Programa não foi escrito para permitir que diferentes Threads façam uso dos mesmos componentes simultaneamente (ThreadSafe)

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Não se trata disso... Uma reforma estrutural seria necessária, para deixar a aplicação ThreadSafe...

Não é criada uma nova instância dos componentes do ACBr a cada Thread...

Embora toda a execução de cada conexão ocorra dentro de uma chamada com Synchonize, o que causa o efeito de criar uma nova entrada no CallStack (Pilha)... é possível que as informações de uma thread, contaminem a outra... 

Imagine o exemplo: duas Threads chamam o mesmo método: NFE.StatusServico... da maneira que está implementado (Synchonize), a última chamada irá congelar a primeira chamada,  e ficará acima da pilha, após a ultima chamada ser executada por completo, a pilha retornará para a primeira chamada... mas nesse momento, as Propriedades do Componente ACBrNFe, foram alteradas pela execução da segunda chamada.. e o retorno da Primeira chamada poderá conter dados inválidos...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

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