Ir para conteúdo
  • Cadastre-se

dev botao

MÉTODO ASSINAR = TRANSACTION IS NOT ACTIVE


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

Recommended Posts

Prezados Companheiros

Eu criei recurso para na minha aplicação importar arquivo TXT  e gerar arquivo XML.
Tudo ocorreu com sucesso.
Vejam como ficou o código-fonte:
                acbrNota.NotasFiscais.Clear;
                acbrNota.NotasFiscais.Add;
                NFeRTXT := TNFeRTXT.Create(acbrNota.NotasFiscais.Items[0].NFe);
                NFeRTXT.CarregarArquivo(Trim(stArquivo));
                if NFeRTXT.LerTxt then
                   NFeRTXT.Free
                else
                  begin
                     NFeRTXT.Free;
                     //tenta XML
                     acbrNota.NotasFiscais.Clear;
                     try
                        acbrNota.NotasFiscais.LoadFromFile(stArquivo);
                     except
                        //ShowMessage('Arquivo NFe Inválido');
                        //exit;
                     end;
                  end;
                acbrNota.NotasFiscais.Items[0].GerarXML;  
                acbrNota.NotasFiscais.Items[0].GravarXML(ExtractFileName(stArquivoXML),ExtractFilePath(stArquivoXML));
                acbrNota.NotasFiscais.Items[0].GravarXML(ExtractFileName(stArquivoXML),ExtractFilePath(stArquivoXML));

Mas aí resolvi modificar para já gerar o arquivo assinado, caso o Número de Série do certificado esteja configurado no
computador, desta forma :
                if (Trim(stNROCERTIFICADO) <> '') then
                  begin
                    acbrNota.NotasFiscais.Assinar;
                  end;
                acbrNota.NotasFiscais.Items[0].GravarXML(ExtractFileName(stArquivoXML),ExtractFilePath(stArquivoXML));

Só começou a exibir um erro de "TRANSACTION IS NOT ACTIVE" na linha do método ASSINAR.

Sabem os companheiros o que pode esta ocasionando isto?

Grato

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Carlos,

Eu nunca vi essa mensagem de erro.

No momento de executar o método Assinar o componente esta carregado com o XML da nota?

Chegou a executar o "debugue" para saber exatamente quando é levantado esse erro?

 

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Sr. Italo

Na verdade eu procedo da seguinte forma :

- importo o arquivo txt ( acbrNota.NotasFiscais.LoadFromFile(stArquivo); )

- gero o arquivo xml (    acbrNota.NotasFiscais.Items[0].GerarXML; )  ( faço isto apenas 1 vez, embora eu tenha colocado repetido logo acima )

- assino o arquivo xml (       acbrNota.NotasFiscais.Assinar; )

- gero o arquivo em disco (acbrNota.NotasFiscais.Items[0].GravarXML(ExtractFileName(stArquivoXML),ExtractFilePath(stArquivoXML));)

Porém eu não consigo debugar porque o certificado digital do cliente é A3 e não posso trazê-lo para meu escritório.

Eu só consegui descobrir o erro porquefui colocando showmessage logo após cada linha, o que me possibilitou descobrir.

O Sr. acha que cometi algum erro na sequência de comandos?

Seria falta de alguma DLL específica?

Grato

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Carlos,

Não acredito que seja a falta de DLL, mas ser realizar um "debug" fica mais complicado de descobrir.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Sr. Italo

Será que eu consigo utilizar o ACBR MONITOR PLUS para assinar um arquivo xml?

Eu gero um arquivo ENT.TXT na pasta padrão do ACBRMONITORPLUS com um comando para assinar um arquivo que está em

em uma determinada pasta.

Acha que daria certo?

Obviamente no AcbrMonitorPlus estaria configurado o Certificado Digital e dados do emitente.

Grato

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • Solution

Boa tarde

https://acbr.sourceforge.io/ACBrMonitor/NFEAssinarNFe.html

Mas se utiliza Delphi é mais fácil alimentar o componente e ele faz tudo... Chegou a ver o DemoNFe?

Consultor SAC ACBr

José Junior
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

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