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á 2306 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

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

  • Consultores
Postado

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 / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

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

 

Postado

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

 

 

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