Jump to content

MÉTODO ASSINAR = TRANSACTION IS NOT ACTIVE


Go to solution Solved by José M. S. Junior,
  • Este tópico foi criado há 1469 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 to comment
Share on other 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

Link to comment
Share on other 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 to comment
Share on other 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 to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.