Ir para conteúdo
  • Cadastre-se

Uzy Tecnologia Ltda

Membros Pro
  • Total de ítens

    36
  • Registro em

  • Última visita

Tudo que Uzy Tecnologia Ltda postou

  1. Sim José! É esse o problema! Porque para ter um retorno TRUE da função LerXML se precisa colocar um elemento "retEnvEvento" no XML de envio do evento? Conforme coloquei escopo desta postagem eu utilizei o método NFe.EnviarEvento() passando o caminho do XML. A questão é que o método de leitura de XML que é utilizando para a LEITURA do XML de envio e retorno não esta retornando TRUE quando o XML de envio de evento é lido ocasionando o erro "Erro ao abrir o arquivo";
  2. Utilizei o validador da SEFAZ https://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx para o ArquivoQueGerouErroNoACBR.xml e validou o schema corretamente. Já o ArquivoProcessado.xml consta o elemento <retEnvEvento></retEnvEvento> e que só assim foi processado pelo ACBR conforme mencionei acima.
  3. Quando utilizo o método NFE.XMLEnviarEvento() por arquivo TXT (Entrada/Saida) passando o xml ou o arquivo por parâmetro o MonitorACBR me retorna o erro "Erro ao abrir o arquivo + {nomearquivo}"; Verificando o código do ACBR a seguinte função é invocada: tDFeEventoNFe : begin if FilesExists(XMLorFile) then begin if not ACBrNFe1.EventoNFe.LerXML(XMLorFile) then raise Exception.Create('Erro ao abrir o arquivo '+ XMLorFile) else PathDfe := XMLorFile; end else raise Exception.Create('Arquivo '+ XMLorFile +' não encontrado.'); end; Pelo que percebi o erro ocorre porque no método LerXML sempre o retorno será "False". Somente consegui enviar um evento de cancelamento quando no xml também informei o elemento de retorno do evento "retEnvEvento"; Isso ocorre pois como demostrado abaixo o Result só recebe atribuição caso existir o elemento retEnvEvento. function TRetEventoNFe.LerXml: Boolean; var ok: Boolean; i, j: Integer; begin Result := False; i:=0; try if (Leitor.rExtrai(1, 'evento') <> '') then begin if Leitor.rExtrai(2, 'infEvento', '', i + 1) <> '' then begin infEvento.ID := Leitor.rAtributo('Id'); InfEvento.cOrgao := Leitor.rCampo(tcInt, 'cOrgao'); infEvento.tpAmb := StrToTpAmb(ok, Leitor.rCampo(tcStr, 'tpAmb')); infEvento.CNPJ := Leitor.rCampo(tcStr, 'CNPJ'); infEvento.chNFe := Leitor.rCampo(tcStr, 'chNFe'); infEvento.dhEvento := Leitor.rCampo(tcDatHor, 'dhEvento'); infEvento.tpEvento := StrToTpEvento(ok,Leitor.rCampo(tcStr, 'tpEvento')); infEvento.nSeqEvento := Leitor.rCampo(tcInt, 'nSeqEvento'); infEvento.VersaoEvento := Leitor.rCampo(tcDe2, 'verEvento'); if Leitor.rExtrai(3, 'detEvento', '', i + 1) <> '' then begin infEvento.DetEvento.xCorrecao := Leitor.rCampo(tcStr, 'xCorrecao'); infEvento.DetEvento.xCondUso := Leitor.rCampo(tcStr, 'xCondUso'); infEvento.DetEvento.nProt := Leitor.rCampo(tcStr, 'nProt'); infEvento.DetEvento.xJust := Leitor.rCampo(tcStr, 'xJust'); InfEvento.detEvento.cOrgaoAutor := Leitor.rCampo(tcInt, 'cOrgaoAutor'); infEvento.detEvento.tpAutor := StrToTipoAutor(ok, Leitor.rCampo(tcStr, 'tpAutor')); infEvento.detEvento.verAplic := Leitor.rCampo(tcStr, 'verAplic'); infEvento.detEvento.dhEmi := Leitor.rCampo(tcDatHor, 'dhEmi'); infEvento.detEvento.tpNF := StrToTpNF(ok, Leitor.rCampo(tcStr, 'tpNF')); infEvento.detEvento.IE := Leitor.rCampo(tcStr, 'IE'); // infEvento.detEvento.vNF := Leitor.rCampo(tcDe2, 'vNF'); // infEvento.detEvento.vICMS := Leitor.rCampo(tcDe2, 'vICMS'); // infEvento.detEvento.vST := Leitor.rCampo(tcDe2, 'vST'); if Leitor.rExtrai(4, 'dest', '', i + 1) <> '' then begin infEvento.detEvento.dest.UF := Leitor.rCampo(tcStr, 'UF'); infEvento.detEvento.dest.CNPJCPF := Leitor.rCampoCNPJCPF; infEvento.detEvento.dest.idEstrangeiro := Leitor.rCampo(tcStr, 'idEstrangeiro'); infEvento.detEvento.dest.IE := Leitor.rCampo(tcStr, 'IE'); // Alterado em 22/07/2014 por Italo // para ficar em conformidade com o Schema infEvento.detEvento.vNF := Leitor.rCampo(tcDe2, 'vNF'); infEvento.detEvento.vICMS := Leitor.rCampo(tcDe2, 'vICMS'); infEvento.detEvento.vST := Leitor.rCampo(tcDe2, 'vST'); end; end; end; if Leitor.rExtrai(2, 'Signature', '', i + 1) <> '' then begin signature.URI := Leitor.rAtributo('Reference URI='); signature.DigestValue := Leitor.rCampo(tcStr, 'DigestValue'); signature.SignatureValue := Leitor.rCampo(tcStr, 'SignatureValue'); signature.X509Certificate := Leitor.rCampo(tcStr, 'X509Certificate'); end; end; if (Leitor.rExtrai(1, 'retEnvEvento') <> '') or (Leitor.rExtrai(1, 'retEvento') <> '') then begin Fversao := Leitor.rAtributo('versao'); (*HR03 *)FidLote := Leitor.rCampo(tcInt, 'idLote'); (*HR04 *)FtpAmb := StrToTpAmb(ok, Leitor.rCampo(tcStr, 'tpAmb')); (*HR05 *)FverAplic := Leitor.rCampo(tcStr, 'verAplic'); (*HR06 *)FcOrgao := Leitor.rCampo(tcInt, 'cOrgao'); (*HR07 *)FcStat := Leitor.rCampo(tcInt, 'cStat'); (*HR08 *)FxMotivo := Leitor.rCampo(tcStr, 'xMotivo'); i := 0; while Leitor.rExtrai(2, 'infEvento', '', i + 1) <> '' do begin FretEvento.Add; // Incluido por Italo em 07/05/2014 FretEvento.Items[i].FRetInfEvento.XML := Leitor.Grupo; // (*HR10 *)FretEvento.versao := Leitor.rCampo(tcStr, 'versao'); (*HR12 *)FretEvento.Items[i].FRetInfEvento.Id := Leitor.rAtributo('Id'); (*HR13 *)FretEvento.Items[i].FRetInfEvento.tpAmb := StrToTpAmb(ok, Leitor.rCampo(tcStr, 'tpAmb')); (*HR14 *)FretEvento.Items[i].FRetInfEvento.verAplic := Leitor.rCampo(tcStr, 'verAplic'); (*HR15 *)FretEvento.Items[i].FRetInfEvento.cOrgao := Leitor.rCampo(tcInt, 'cOrgao'); (*HR16 *)FretEvento.Items[i].FRetInfEvento.cStat := Leitor.rCampo(tcInt, 'cStat'); (*HR17 *)FretEvento.Items[i].FRetInfEvento.xMotivo := Leitor.rCampo(tcStr, 'xMotivo'); (*HR18 *)FretEvento.Items[i].FRetInfEvento.chNFe := Leitor.rCampo(tcStr, 'chNFe'); (*HR19 *)FretEvento.Items[i].FRetInfEvento.tpEvento := StrToTpEvento(ok,Leitor.rCampo(tcStr, 'tpEvento')); (*HR20 *)FretEvento.Items[i].FRetInfEvento.xEvento := Leitor.rCampo(tcStr, 'xEvento'); (*HR21 *)FretEvento.Items[i].FRetInfEvento.nSeqEvento := Leitor.rCampo(tcInt, 'nSeqEvento'); (*HR22 *)FretEvento.Items[i].FRetInfEvento.CNPJDest := Leitor.rCampo(tcStr, 'CNPJDest'); if FretEvento.Items[i].FRetInfEvento.CNPJDest = '' then (*HR23 *)FretEvento.Items[i].FRetInfEvento.CNPJDest := Leitor.rCampo(tcStr, 'CPFDest'); (*HR24 *)FretEvento.Items[i].FRetInfEvento.emailDest := Leitor.rCampo(tcStr, 'emailDest'); FretEvento.Items[i].FRetInfEvento.cOrgaoAutor := Leitor.rCampo(tcInt, 'cOrgaoAutor'); (*HR25 *)FretEvento.Items[i].FRetInfEvento.dhRegEvento := Leitor.rCampo(tcDatHor, 'dhRegEvento'); (*HR26 *)FretEvento.Items[i].FRetInfEvento.nProt := Leitor.rCampo(tcStr, 'nProt'); // FretEvento.Items[i].FRetInfEvento.chNFePend := Leitor.rCampo(tcStr, 'chNFePend'); j := 0; while Leitor.rExtrai(3, 'chNFePend', '', j + 1) <> '' do begin FretEvento.Items[i].FRetInfEvento.chNFePend.Add; FretEvento.Items[i].FRetInfEvento.chNFePend[j].ChavePend := Leitor.rCampo(tcStr, 'chNFePend'); inc(j); end; inc(i); end; Result := True; end; except result := False; end; end; Está correto o método só possuir retorno "True" quando o xml possuir o elemento de retorno do evento? Creio que o "Result" deveria ficar antes do tratamento da exceção, conforme segue: ... inc(j); end; inc(i); end; end; Result := True; except result := False; end; ...
  4. Pessoal, atualizei o ACBrMonitor para a versão 1.1.0.44 e executei novamente a consulta, diretamente no ACBr, e o resultado continua o mesmo. Anexo os logs e também os dois xml consultados. LOG.TXT LOG_COMP.TXT ACBrMonitor.ini ACBrMDFeServicos.ini lote-MTZ-5-694.xml lote-MTZ-5-700.xml
  5. Em anexo comandos executados e arquivos ini e log. LOG.TXT LOG_COMP.TXT ACBrMonitor.ini
  6. Daniel, o erro ocorre sempre, também utilizando a opção Consultar NFe, no menu DF-e + Teste, do ACBrMonitorPLUS.
  7. Bom Dia Senhores. Temos mais algumas ideias quanto a este problema? O problema continua ocorrendo...
  8. Sim, ocorre em mais NFCes. Este é apenas um exemplo de vários. Porem, estranhamente não ocorre em todas, algumas aprovam... Tentei colocar o .ini acima e ocorreu o mesmo problema.
  9. Alterei o certificado para o SSL e fiz o teste de STATUS conforme mencionado, funcionou normalmente. Porém quando eu faço a consulta daquele XML, ocorre o mesmo problema do HTTP 500. Estamos enviando o comando NFE.ConsultarNFe. Segue em anexo agora o arquivo ACBrMonitor.ini de configuração do ACBr. ACBrMonitor.ini
  10. Bom Dia Senhores, Utilizamos aqui na empresa o ACBrMonitor PLUS para emissão de NFes e NFCes. Ao implantar a versão 1.1.0.36 do aplicativo em um cliente da Bahia, foi notado que ao tentar fazer a consulta de XMLs de NFCe pelo próprio aplicativo, nos é mostrado o seguinte log: 13/11/2017 09:31:30 - EACBrDFeException - Erro Interno: 0 Erro HTTP: 500 13/11/2017 09:31:30 - Erro Interno: 0 Erro HTTP: 500 Este erro ocorre quando é feita a consulta de um XMLs para saber se o mesmo fora aprovado pela SEFAZ. Como a Bahia utiliza a SEFAZ virtual do RS para emitir NFCes, entramos em contato com eles e nos retornaram que não existe erro algum nos Webservices. Alguém mais está tendo este problema? Poderiam me ajudar a resolvê-lo? Envio em anexo o XML que estou utilizando para os testes. Desde já agradeço o apoio... lote-MTZ-5-694.xml
  11. Também estava com o mesmo problema e seguindo esta orientação, já está funcionando novamente. Obrigada.
  12. ok, então o ACBRmonitor Plus não se envolve quando preciso mandar EPEC? é isso. Não existe uma configuração nele que faça o esquema de mandar para o ambiente nacional e após validação imprimir uma danfe com o protocolo do epec. Pergunto isso porque a impressão da danfe quem faz pra nós é o ACBRmonitor Plus. Daí se ele não fa o esquema do EPEC, vamos ter que desenvolver toda uma danfe só para as situações de EPEC.
  13. Oi pessoal, revirei o site aqui e não encontrei de forma clara algo que me oriente na hora de eu emitir um EPEC: Me explico: O XML do EPEC eu ou o ACBRMonitor Plus vai mandar para o Ambiente Nacional e assinar colocar na Danfe o protocolo, conforme manda a NT? Ou... eu vou ter que fazer essa parte separado do ACBRMonitor e depois que eu tiver o retorno do "AN", coloco nas OBS da danfe os dados do retorno do EPEC? Espero ter cido claro, se não tento explicar melhor.
  14. Está e já contactamos, aparentemente liberam logo.
  15. Agradeço pela informação. Contactaremos eles agora. Visto que ao entrar em "Para mais informações clique aqui", vai para a mesma mensagem de "Acesso negado!", a famosa "referência circular" entre um link e sua própria página.
  16. Não encontramos um e-mail/tópico/fórum para onde mandar requisição de acesso aos downloads pois é negado de forma improcedente; Reativamos a conta e emitimos o boleto pra pagar o acesso SAC mas não encontramos quem possa tirar a mensagem de acesso negado para podermos baixar o ACBrMonitorPLUS 0.3.06.3 para Windows, estamos com clientes parados no Sergipe. Agradecendo antecipadamente, uzy
  17. Mais uma vez muito obrigado André! Feita uma dezena de correções, temos: no validador Tanca: Validação do XML do CFe OK. e no log do emulador: [2016-02-19 11:46:13.852]:Campo 'IE' invalido [2016-02-19 11:46:13.852]:Erro no campo 'emit': 1230 [2016-02-19 11:46:13.867]:ERRO NA EMISSAO: 1230: Rejeicao: IE do emitente diferente da IE do contribuinte autorizado para uso do SAT
  18. Agradeço a dica André!!!!! Me passei em não remover caracteres ilegais em duas dessas tags, por isso a "Falha na estrutura do XML de venda"; No entanto me espanta a validação a seguir... ... pois o 1º erro espera a tag CNPJ antes da cUF, enquanto que a especificação lista o cUF como sendo a 1º tag do grupo ide, e não a CNPJ!!! Só estou observando a título de curiosidade mesmo, pois isso não é de forma alguma de responsabilidade do ACBr/fórum. Vou trabalhar para satisfazer este validador, já que o governo não oferece tal facilitação...
  19. Li vários tópicos de mesmo nome aqui, fiz pente fino comparando com a especificação do PDF, fiz comparações com os exemplos da Tanca e da Sweda, e não consegui desvendar qual é o erro de estrutura que o log do emulador acusa. Tem alguém já "calejado de Sat" pra passar o olho nesse Xml e dizer onde está a -- supondo que seja só uma -- mancada? Meu xml: Log do emulador Sat:
  20. infelizmente já fiz isso e não deu certo. De fato na máquina do meu colega está ocorrendo o mesmo. o programa sugerido de testes funciona bem. Não saquei por que o ACBRMonitorPlus da esse outro erro.
  21. Oi pessoal, estou com este erro no emulador do SAT. Isso ocorre quando clico no botão "Ativar SAT". Notem que os demais comandos respondem bem, mas esse me da erro. Mais detalhes na imagem...
  22. Boa noite pessoal!! Estamos com o mesmo problema.... Abraço a todos.. Boa Tarde, Tivemos o mesmo problema, utilizando o ACBrMonitorPlus 0.1.10.5 - ACBr 0.9.0a. Porém da seguinte forma: Fiz uma inutilização para uma NFCe que foi confirmada com sucesso e logo na sequencia fiz uma inutilização de uma NFe. Ao tentar inutilizar a NFe foi mostrado o erro Rejeicao: Modelo da NF-e diferente de 65. Fechei todas as aplicações abertas e iniciei as duas inutilizações novamente, porém na ordem inversa. Fiz a inutilização de uma NFe que foi confirmada com sucesso e depois, logo na sequencia, fiz a inutilização de uma NFCe, quando foi me mostrado a mensagem Rejeicao: Modelo da NF-e diferente de 55. Parece que o ACBrMonitorPlus está tentando mandar a segunda inutilização para o webservice do modelo da primeira inutilização, como se isto ficasse em algum cache. Exemplo, manda a inutilização da NFe para o webservice da NFCe no primeiro teste. E vice versa no segundo teste.
  23. Obrigado pela resposta Daniel, mas vamos combinar que ela responde apenas uma das perguntas que eu fiz. Mas após olhar outros sites e fóruns achei todas as respostas: Deixo aqui para que se alguém tiver o mesmo problemas, possa encontrar a resposta já de uma só vez: Geração do QRCode automaticamente: O ACBRMonitoPlus gera sozinho o QRCode, basta informar o CSC/Token e idCSC/idToken no seguinte lugar: Grupo: DFe--> WebService-->NFC-e E também deixar marcado o CheckBox de adicionar a tag. Para quem quer fazer o QRCode sem ser por meio so ACBRMonitorPlus, após o retorno da receita (Ao Assinar o XML), o XML vem com as informações do DigestValue. Você tem que ler o xml nesse momento, alterar ele a só após isso Valida. (tirei daqui: http://portalnfce.sefaz.am.gov.br/forums/topic/nota-tecnica-2015-002-qr-code-campo-digest-value/) Que eu saiba, não tem forma de calcular o DigestValue, é algo que a receita manda para vc no XML. Mas no fim das contas não precisei fazer o QRCode manualmente, pois ao informar o CSC como falei acima, tudo funcionou lindamente. Obrigado a todos os que desenvolvem o ACBRMonitorPlus, pois me facilitam a vida pra caramba!! Também gostei de terem migrado para o Lazarus. Infelizmente aqui usamos Delphi 5 e não conseguimos instalar os componentes do ACBR,
  24. Boa tarde pessoal, seguinte, acabo de instalar o ACBRMonitorPlus e configurei tudo para que funciona com o nosso sistema, mas para emitir NFC-e da o erro: "Lote não autorizado!Motivo: Rejeicao: Codigo identificador do CSC no QR-Code nao cadastrado na SEFAZ Código: 462" Na aba NFC-e na configuração do "Plus" tem um CheckBox "Adicionar Tag de QRCode em Informações Suplementares". Posso ter sido inocente, mas acreditei que clicando ali, o PLUS geraria a tag com o QRCode pronto. Mas pelo que parece não ocorreu assim. Já procurei um monte e não achei um tópico que me explicasse de onde tiro o tal "digVal" que basicamente seria o único que me falta para eu fazer o QRCode, mas vi que isso só vem do retorno da Sefaz, então... Como vou incluir no XML uma coisa que eu ainda não tenho? Ou existe uma maneira de criar esse digVal? Calcular ele? pegar ele de algum lugar? Sim, to perdidinho. Agradeço a ajuda.
×
×
  • 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...