Ir para conteúdo
  • Cadastre-se

NathanMgnet

Membros
  • Total de ítens

    19
  • Registro em

  • Última visita

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

NathanMgnet's Achievements

Apprentice

Apprentice (3/14)

  • Collaborator Rare
  • First Post
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

0

Reputação

1

Community Answers

  1. Agradeço pelo esclarecimento Fábio Dúvidas esclarecidas
  2. Para efetuar esse download é necessário manifestar a ciência antes?
  3. Preciso montar uma solução onde apenas pelo número da nota fiscal eu consiga baixar o XML. Isso é possível através do ACBr? Se não é possível quais as alternativas? Agradeço
  4. Boa tarde Grato pela resposta No servidor linux foram executados os comandos: sudo apt-get install libssl-dev libxml2-dev sudo apt-get install libxml2 No servidor existem arquivos da libxml2 (conforme anexo) O programa está executando em outra pasta onde existem apenas o programa em si e pasta Schemas
  5. No tópico abaixo é feita uma explicação por Daniel Simoes sobre como usar acbr no linux, porém com Lazarus https://www.projetoacbr.com.br/forum/topic/57844-acbr-linux-lazarus-console/#comment-379287 Existe alguma instrução semelhante para Delphi?
  6. O erro acontece em ACBrDFeXsLibXml2 no seguinte método: function TDFeSSLXmlSignLibXml2.TentaPegarMensagemErroDetalhada(const MsgErroAtual: string): String; var prtUltimoErroXml: xmlErrorPtr; begin Result := ''; prtUltimoErroXml := xmlGetLastError(); if (prtUltimoErroXml <> nil) then begin Result := MsgErroAtual + ' --> ' + IntToStr(prtUltimoErroXml^.code) + ' - ' + prtUltimoErroXml^.message; end else Result := MsgErroAtual; end; Quando eu removo "prtUltimoErroXml^.message" do retorno o programa funciona corretamente, retornando ao usuário o erro real presente no xml Mas se deixar "prtUltimoErroXml^.message" acontece o "Access Violation" Lembrando que isso acontece apenas no linux, pois no windows tudo funciona corretamente
  7. Schemas está na pasta correta Até pelo fato de que notas sem erro de XML são transmitidas perfeitamente O problema é apenas em notas com erro no XML Exemplo de erro que no linux aparece como access violation mas no windows não: Falha na validação dos dados da nota: 54 TAG:<det nItem="1"><imposto><ICMS><ICMSSN> ID:N12a/CSOSN(Código de Situação da Operação – Simples Nacional) - Nenhum valor informado.
  8. No tópico abaixo é feita uma explicação por Daniel Simoes sobre como usar acbr no linux, porém com Lazarus https://www.projetoacbr.com.br/forum/topic/57844-acbr-linux-lazarus-console/#comment-379287 Existe alguma instrução semelhante para Delphi?
  9. Isso é muito óbvio e já foi feito Na unit ACBrNFeNotasFiscais, método NotaFiscal.Validar, na seguinte linha de código: NotaEhValida := SSL.Validar(AXML, GerarNomeArqSchema(ALayout, VerServ), Erro); O depurador não entra neste método SSL.Validar Quando estou no windows a variável NotaEhValida receber o valor FALSE e o programa continua Quando estou no linux esse trecho dá bug de access violation
  10. Uma informação que talvez seja relevante A mensagem correta do erro é exibida no terminal, mas não consigo capturá-la com: try ... except on e: Exception do begin ... end; end;
  11. Eu adicionei essa diretiva no projeto e testei com o código: {$IFDEF NOGUI} writeln('NOGUI ATIVADO'); {$ENDIF} A mensagem "NOGUI ATIVADO" é exibida no terminal indicando que a diretiva está correta Mas o erro persiste Notas sem erro são autorizadas Notas com erro no XML retornam sempre ACCESS VIOLATION
  12. Agradeço a resposta Pelo oq entendi vc sugere o seguinte código: ACBrNFe.Configuracoes.Geral.SSLLib := libOpenSSL; ACBrNFe.SSL.SSLType := LT_TLSv1_2; Fiz essa alteração e o erro persiste Não tenho muita prática com ACBr, então não entendi o que vc quis dizer com NOGUI.
  13. Boa tarde Desenvolvemos uma aplicação para emissão de documentos fiscais em Delphi que atualmente está executando em um servidor UBUNTU Quando executo a aplicação em uma máquina windows tudo acontece corretamente, inclusive quando existe um erro em "ACBrNFe.NotasFiscais.Validar" consigo capturar a exceção e tratar para por exemplo exibir ao usuário O fato é que ao criar a mesma exceção executando em linux o retorno sempre é "access violation", assim não consigo exibir de maneira clara para o usuário a exceção que está acontecendo Uma nota sem erros é autorizada perfeitamente no linux, mas quando tem erros no xml a mensagem sempre é "access violation" O erro acontece em TDFeSSL.Validar Estou usando a seguinte configuração quando compilado para linux: ACBrNFe.Configuracoes.Geral.SSLCryptLib := cryOpenSSL; ACBrNFe.Configuracoes.Geral.SSLHttpLib := httpOpenSSL; ACBrNFe.Configuracoes.Geral.SSLXmlSignLib := xsLibXml2; E como dito, no windows, a mesma situação resulta em uma mensagem de erro específica Existe alguma configuração que eu deva fazer para corrigir essa situação? Desde já agradeço
  14. Após ler diversos pontos do código do componente criei uma solução Como eu havia dito, TODAS as operações funcionam em qualquer timezone, mesmo no meu servidor hospedado fora do Brasil Isso porque o ACBr envia os dados com informação de timezone e a SEFAZ as reconhece O fato é que somente o cancelamento não aceitava timezone diferente (na SEFAZ MG) Para solucionar isso, no cancelamento mudei duas linhas de código: ACBrNFe.Configuracoes.WebServices.TimeZoneConf.ModoDeteccao := tzPCN with ACBrNFe.EventoNFe.Evento.New do begin (...) infEvento.dhEvento := DataHoraTimeZoneModoDeteccao(ACBrNFe); end; ModoDeteccao tzPCN: ajusta apenas o final do string que identifica o timezone dentro da tag dhEvento de acordo com o timezone da UF da operação (-03:00 no meu caso) A função DataHoraTimeZoneModoDeteccao retorna a data atual convertendo para o time zone indicado em ModoDeteccao Com isso a tag dhEvento é preenchida corretamente Fica aqui documentada uma solução mais prática para quem interessar
  15. Esta é a única solução? Não existe uma configuração no ACBr que ajuste a data/hora de acordo com um time zone específico? Reparei que a propriedade "ACBrNFe.Configuracoes.WebServices.TimeZoneConf.ModoDeteccao" altera o time zone mas não ajusta a hora conforme o time zone especificado, ou seja, a hora continua do time zone zero mas o string final fica como de MG "-03:00" O servidor está hospedado fora do Brasil
×
×
  • 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.

The popup will be closed in 10 segundos...