Jump to content

Search the Community

Showing results for tags 'distribuicaodfe'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

There are no results to display.

Forums

  • Fórum Aberto - ACBr
    • ACBr News
    • Equipamentos testados
    • Base de Conhecimento
    • Dúvidas Gerais sobre o ACBr
    • ACBrSerial
    • ACBrSAT
    • ACBrNFe
    • ACBrMonitor PLUS
    • ACBrDFe
    • ACBrTEFD e Dúvidas sobre TEF
    • ACBrTXT
    • ACBrBoleto
    • ACBrDiversos
    • ACBrTCP
    • ACBrFramework
    • ACBrLIB
    • Dia do ACBr
  • Suporte Pago - SAC
    • Dúvidas gerais
    • ACBrMonitorPLUS
    • NFe/NFCe - Nota Fiscal Eletrônica
    • DFe - Documentos Fiscais Eletrônicos
    • SAT / MFE
    • TEF
    • Boleto
    • ACBrSPED
    • ACBrTXT
    • Paf-ECF
    • Requisitos Fiscais por UF
    • ACBrLIB
  • Outros Assuntos
    • ACBr's Pub
    • Legislação Fiscal e Tributária
    • Object Pascal - Delphi & Lazarus
    • Data Base
    • Classificados
    • Dúvidas não relacionadas ao ACBr

Categories

  • ACBrLib
  • Suporte Pago - SAC
    • ACBrMonitorPLUS - SAC
    • Utilitários - SAC
    • Dia do ACBr 1a edição
    • Dia do ACBr 2a edição
  • Free Download
    • ACBrMonitorPLUS
    • Demos / Testes / Utilitários
    • Apresentações - Palestras

Calendars

  • Eventos - Palestras - Webinars
  • Prazos SEFAZ
  • Community Calendar
  • Feriados Nacionais

Blogs

  • Daniel Simoes' Blog
  • André Ferreira de Moraes
  • Moderadores ACBr
  • Teste de Blog
  • Notícias do ACBr

Categories

  • Suporte Pago - SAC
    • Curso Dominando o ACBrMonitor
    • Webinars
    • Video Aulas
    • Palestras - Dia do ACBr 2a Ediçao
  • Vídeos Abertos
    • Video Aulas
    • Comunicados
    • Dia do ACBr 2a Ediçao
    • Dia do ACBr 1a Ediçao
    • Homologação ACBr
  • Campanhas promocionais

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Skype


Localização


Interesses


CNPJ da Empresa


CPF

Found 61 results

  1. Pessoal, me desculpe se é uma pergunta leiga. Eu sei que que o web service DistribuicaoDFe da Sefaz bloqueia temporariamente os acessos de um certo cnpj, caso ele faça muito acesso. Quando faço alguns testes aqui e acabo utilizando um pouco (uns 10 acessos seguidos), mesmo no ambiente de homologação, o componente acbr trava, consequentemente travando o código. Procurei no exemplo que vem no controle de versão e também trava o cnpj que estou testando ao tentar o acesso à sefaz. Sei que quando esse bloqueio acontece, o normal é o servidor retornar um xml com o cStat 656 - Consumo Indevido, mas não é isso que está acontecendo, o componente está travando o código. Alguém já passou por isso? Desde já sou grato...
  2. Boa tarde, Inicialmente parabéns pelo projeto ACBrMonitor! Decidi utilizá-lo em função da praticidade de integração com meu IDE. Estou tentando baixar os xml´s destinados a um CNPJ. Porém, percebi que existe um delay variável entre a resposta do servidor me informando sobre a Manifestação da Ciência da Emissão (obrigátorio para baixar o xml NF-e) e a disponibilidade para baixar o XML. Minha rotina: 1) Recebimento a Mercadoria + DANFE. 2) Leio Chave da DANFE e utilizo comando NFE.EnviarEvento(Evento.ini) para enviar Manifestação da ciência. 3) Aguardo o retorno do WS informando o recebimento da Manifestação, se a resposta for positiva: 4) Baixo o XML através do comando NFe.DistribuicaoDFePorChaveNFe(cUF, cCNPJ, aChNFe); 5) Executo ações de validações com a Ordem de Compra que solicitou o processo (Processo interno de minhas regras de negócio). Em 100% das minhas tentativas (entre ontem e hoje) recebo inicialmente uma resposta (para o passo 4) quanto tenho baixar o xml logo após receber o retorno do WS previamente manifestado: OK: [DistribuicaoDFe] CStat=137 CUF=0 DhRecbto=30/12/1899 Msg=Nenhum documento localizado VerAplic=1.2.0 Versao=1.01 XMotivo=Nenhum documento localizado arquivo= dhResp=12/11/2019 09:17:20 indCont=1 maxNSU= tpAmb=1 ultNSU= Aguardando algum tempo, se tento baixar o XML ele me retorna cStat=138 com XML correto. Lí em diversos posts aqui no forum sobre esse possível delay do Sefaz, porém o mais recente é de 12 de jan. de 2019. Nestes Posts, salvo engano, não encontrei nenhuma solução para o caso de se baixar logo que se retorna a resposta da manifestação. Entendo perfeitamente que o problema não é no ACBrMonitor, pois ele faz a ponte corretamente me retornando respostas o WS. Lí como melhor solução, até aquele momento de jan de 2019, que uma possível solução seria manifestar previamente a NFe e deixá-la disponível para quando a DANFE chegasse in-loco. Assim pergunto: 1) A rotina que uso acima estaria errada em algum ponto? Estou esquecendo algum passo importante? 2) Ainda permanece como melhor opção manifestar previamente para qdo chegar a DANFE estar já manifestada a ciência? A importãncia de se ter o XML (além das jurídicas impostas) é que valido as Ordens de Compra que geraram a NFe. Dessa forma, no meu mundo ideal, a rotina de baixar pela chave no momento da chegada da DANFE atenderia o processo. PS.: Entendo que a responsabilidade do envio do XML é do emissor da NF. Mas sabemos que depende de ação humana em um cadastro correto das informações de envio, o qual não temos domínio e em aprox. 30% dos casos está incorreta... No aguardo, Paulo
  3. Boa tarde PessoALL... Tem uma empresa com a seguinte situação... Por imprudência do usuário, todos os arquivos XML de 2 anos pra cá foram excluídos, pra variar não existe backup mas olhando o banco de dados deles tem um campo numa tabela específica que possui as informações compactadas do DOCZip, então pensei que se tivesse como carregar o DOCZip no componente novamente, poderia tentar gravar esses arquivos XML de novo. Alguém teria uma idéia se é possível carregar ou já descompactar direto o DOCZip sem passar pelo processo natural do ACBRNFe, quando usamos o WebService ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip[0].XML. Pelo jeito gravavam o campo infZip ao invés do campo XML... Vai entender... Desde já agradeço a ajuda. Márcio
  4. Bom, essa opção de separar usando o nome ficou ótima, más, ficou o detalhe do nome da pasta que é criada. O nome da pasta não tem nenhum espaço , sendo assim, fica meio embaralhado o nome do fornecedor. Caso seja possível, manter os espaços do nome do fornecedor. Um exemplo de como esta salvando o nome da pasta. (PROLINKINDUSTRIAQUIMICALTDA) seria (PROLINK INDUSTRIA QUIMICA LTDA).
  5. Estou tentando enviar um evento para dar Ciencia da Operação, estou recebendo uma mensagem de "schema Inválido", esta mensagem está aparecendo no momento antes de enviar o evento, ou seja, na validação que ocorre no momento antes do Envio da mensagem. Fiz atualização do ACBR, conferi os meus schemas para ter certeza que estão atualizados, mas não encontrei o erro. Alguém sabe o que pode ser ? Segue anexo, minha configuração do componente, o xml que está sendo gerado para transmitir, e a posição da rotina que estou recebendo a mensagem de schema inválido. teste.xml
  6. Olá galera, tudo bem? Eu sou programadora Delphi (utilizo Embarcadero Delphi XE7) e estou tentando criar uma telinha no sistema aqui da empresa onde o usuário possa consultar as notas enviadas contra o CNPJ dele e visualizá-las para facilitar na hora de dar entrada dos produtos e notas fiscais de entrada. Já andei olhando vários tópicos aqui no site sobre o tema e pelo que vi ando fazendo tudo certo: - Pego o CNPJ do cliente e o código UF dele, jogo no DistribuicaoDFePorUltNSU; - Pego o UltNSU que essa pesquisa me dá e retomo o passo 1; - Percorro o arquivo zipado (NFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip) e jogo os dados em um banco além de mostrá-los em um DBGrid. Mas o problema é que ele só me mostra as XML de notas onde o CNPJ informado está como Autorizado e eu preciso das notas onde o CNPJ esteja como Destinatário, como faço isso? Posso jogar o código aqui se quiserem, uso basicamente o DistribuicaoDFE.txt que vem nos arquivos exemplos do ACBr, falta alguma coisa naquele arquivo? Me ajudem por favor.
  7. Bom dia compilei hj o monitor plus e ao executar o metodo NFe.DistribuicaoDFe(50,meucnpj,000000000079613) no grupo ResEveXXX ele tras CNPJ= CNPJCPF=33683111000107 CNPJDest= CStat=0 EmiCNPJ= EmiIE= EmixNome= IE= Id= NSU=000000000079618 VerAplic= Versao= XML=<?xml version="1.0" encoding="UTF-8"?><resEvento xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" versao="1.01" xmlns="http://www.portalfiscal.inf.br/nfe"><cOrgao>91</cOrgao><CNPJ>33683111000107</CNPJ><chNFe>50190726770818000268550010001805321000067167</chNFe><dhEvento>2019-07-24T11:58:13-03:00</dhEvento><tpEvento>610600</tpEvento><nSeqEvento>1</nSeqEvento><xEvento>Registro de Autorização de CT-e para a NF-e</xEvento><dhRecbto>2019-07-24T11:58:13-03:00</dhRecbto><nProt>891191913409900</nProt></resEvento> arquivo=999995019072677081800026855001000180532100006716701-resEventoNFe.xml cOrgao=91 cOrgaoAutor=0 cSitNFe= chNFe=50190726770818000268550010001805321000067167 cteChvCte= cteModal= cteNProt= descEvento= dhEvento=24/07/2019 11:58:13 dhRecbto=24/07/2019 11:58:13 digVal= emailDest= nProt=891191913409900 nSeqEvento=1 schema=resEvento tpAmb= tpEvento=-99999 tpNF= vNF=0 verEvento= xEvento=Registro de Autorização de CT-e para a NF-e xJust= xMotivo= xNome= para os eventos tambem o mesmo codigo -9999 xEvento=Registro de Passagem Automatico MDF-e com CT-e xEvento=MDF-e Autorizado com CT-e
  8. Prezados, boa tarde Desenvolvi uma aplicação para meus clientes monitorarem os XMLS de NFes / CTes emitidos contra seus respectivos CNPJs, com relação aos Eventos da CTe, estou tendo dificuldades em obter os dados do Evento para salvar em banco de dados, estou conseguindo ler partes do xml do evento mas o tpEvento esta sempre trazendo -999999. Abaixo trecho do código onde valido o Schema e tento obter por exemplo o tpevento for i := 0 to j do begin //VALIDANDO SCHEMA RETORNO if ( ACBrCTe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.schema = schprocCTe ) then begin ACBrCTe1.Conhecimentos.Clear; ACBrCTe1.Conhecimentos.LoadFromString(ACBrCTe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.XML, bFalse); CarregarVariaveisCTe(I); end ELSE begin if ( ACBrCTe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.schema = schprocEventoCTe ) then begin ShowMessage(TpEventoToStr(ACBrCTe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.tpEvento)); end; end; end; Obs.: Como ainda estou validando, programei para exibir na tela o tpEvento, ele sempre exibe -999999, porem se consulto o XML de retorno referente ao respectivo evento, o tpevento esta preenchido normalmente, exemplo <tpEvento>310610</tpEvento>. Anexei um arquivo de retorno para caso seja necessário analisar. Desde já agradeço o empenho e a atenção de todos. Att., Alexandre Castro 3106103119040112579700089257015000299629120087557001-procEventoCTe.xml
  9. A condição da linha 496 da função TRetDistDFeInt.LerXml não está funcionando corretamente para XML de CT-e OS. if (oLeitorInfZip.rExtrai(1, LowerCase(FtpDFe) + 'Proc') <> '') then A verificação está sendo realizada na tag cteProc (FtpDFe = CTe), porém a tag correta é cteOSProc. Com isso as propriedades não estão sendo preenchidas corretamente, inclusive o XML.
  10. Bom dia a todos. Estamos utilizando a função ACBrNFe.DistribuicaoDFePorChaveNFe para pegar o XML por chave. Porém existem determinadas chaves em que o retorno do cStat é sempre 137, "Nenhum documento localizado". Eu consulto a chave no site do SEFAZ e ela existe, mas sempre me retorna essa mensagem. Não acontece com todas as chaves, é uma ou outra. Minha rotina funciona da seguinte forma: 1 - Chamo a função ACBrNFe.DistribuicaoDFePorChaveNFe passando a chave. 2 - Depois verifico se a propriedade ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.cStat é igual a 138. 3 - Se a propriedade ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.schema for igual a schresNFe, ele trouxe o resumo, ai mando o evento de ciência (infEvento.tpEvento := teManifDestCiencia;). 4 - Depois executo o passo 1 novamente e verifico se a propriedade ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.schema é igual a schprocNFe, nesse caso, baixo o xml completo para a máquina. Existe alguma explicação pra esse comportamento ou estou fazendo algo de errado? Desde já agradeço.
  11. Estamos implementando ferramentas para automatizar a busca de NFe pelo ambiente nacional, usando a função DistribuicaoDFePorChaveNFe. Primeiramente pegamos e alteramos o código de Manifestação de Destinatário no exemplo em ACBR\Exemplos\ACBrDFe\ACBrNFe\Delphi: Nfe.EventoNFe.Evento.Clear; with Nfe.EventoNFe.Evento.Add do begin InfEvento.cOrgao := 91; infEvento.chNFe := Chave; infEvento.CNPJ := CNPJ; infEvento.dhEvento := now; infEvento.tpEvento := teManifDestConfirmacao; end; Nfe.EnviarEvento(StrToInt(IDLote)); with Nfe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento do begin lMsg:= 'Id: '+Id+#13+ 'tpAmb: '+TpAmbToStr(tpAmb)+#13+ 'verAplic: '+verAplic+#13+ 'cOrgao: '+IntToStr(cOrgao)+#13+ 'cStat: '+IntToStr(cStat)+#13+ 'xMotivo: '+xMotivo+#13+ 'chNFe: '+chNFe+#13+ 'tpEvento: '+TpEventoToStr(tpEvento)+#13+ 'xEvento: '+xEvento+#13+ 'nSeqEvento: '+IntToStr(nSeqEvento)+#13+ 'CNPJDest: '+CNPJDest+#13+ 'emailDest: '+emailDest+#13+ 'dhRegEvento: '+DateTimeToStr(dhRegEvento)+#13+ 'nProt: '+nProt; end; ShowMessage(lMsg); ShowMessage(Nfe.WebServices.EnvEvento.RetWS); ShowMessage(Nfe.WebServices.EnvEvento.RetornoWS); ShowMessage(ACBrUtil.ConverteXMLtoUTF8(Nfe.WebServices.EnvEvento.RetornoWS)); Aparentemente a chave de NFe escolhida foi manifestada corretamente. Então em seguida pegamos e alteramos o código de Distribuição no exemplo em ACBR\Exemplos\ACBrDFe\ACBrNFe\Delphi: nfe.DistribuicaoDFePorChaveNFe(AcUFAutor,ACNPJCPF,AchNFe); ShowMessage(nfe.WebServices.DistribuicaoDFe.RetornoWS); ShowMessage(nfe.WebServices.DistribuicaoDFe.RetWS); O resultado é uma caixa de diálogo do ACBr contendo o motivo "Rejeicao: Falha no esquema xml", depurando o código tenho o retorno em xml: '<retDistDFeInt xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" versao="1.00" xmlns="http://www.portalfiscal.inf.br/nfe"><tpAmb>2</tpAmb><verAplic>1.1.9</verAplic><cStat>215</cStat><xMotivo>Rejeicao: Falha no esquema xml</xMotivo><dhResp>2019-04-02T15:10:38</dhResp><ultNSU>000000000000000</ultNSU><maxNSU>000000000000000</maxNSU></retDistDFeInt>' Verificamos e recolocamos os schemas mas a mensagem de erro persiste, verificamos no fórum e fora um post DistribuicaoDfe por Chave de Acesso de 20 de março de 2017, não achamos nenhuma referencia do que pode estar acontecendo. Alguém tem ideia do que pode estar errado?
  12. Amigos, bom dia ! Estou consumindo o webservice de distribuição de DF-e , no entanto o retorno XML volta com as informações no padrão gzip. Nos exemplos do AcbrNfe não encontrei nada referente de como descompactar o XML , alguém pode me dar uma dica de como fazer isso ?
  13. Boa Tarde ! Estou novamente com a mesma situação que já havia sido corrigido nesse tópico "2) Nessa linha "if (oLeitorInfZip.rExtrai(2, 'retEvento') <> '') then", TROCAR POR if (oLeitorInfZip.rExtrai(2, 'retEventoCTe') <> '') then" Observe na imagem abaixo da revisão 16818. Dessa forma, o componente não carrega as informações ACBrCTe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.chDFe; Não sei se a mesma unit é utilizada para NFe e como vem essa tag para NFe. Não tenho esse exemplo agora. Att. Leandro 3106105019020463992200010257001000017309100021702602-procEventoCTe.xml
  14. A Distribuição DFe parou de funcionar no ACBrMonitorPlus na versão que estou utilizando 1.2.0.55. Ou também posso estar fazendo algo errado. Ao executar o comando "NFe.DistribuicaoDFePorUltNSU("AN", "101xxxxxxxx157", 0)" retorna que não tem documento localizado, abaixo a consulta. NFe.DistribuicaoDFePorUltNSU("AN", "101xxxxxxxx157", 0) OK: [DistribuicaoDFe] CStat=137 CUF=0 DhRecbto=30/12/1899 Msg= VerAplic=1.2.0 Versao=1.01 XMotivo=Nenhum documento localizado arquivo=43190xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx44170-nfe.xml dhResp=22/04/2019 11:11:12 indCont=1 maxNSU=000000000012276 tpAmb=1 ultNSU= Mas se executo a consulta com o comando "NFe.DistribuicaoDFe("AN", "101xxxxxxxx157", 0, , "")" retornam os documentos normalmente. NFe.DistribuicaoDFe("AN", "101xxxxxxxx157", 0, , "") OK: [DistribuicaoDFe] CStat=138 CUF=0 DhRecbto=30/12/1899 Msg= VerAplic=1.2.0 Versao=1.01 XMotivo=Documento(s) localizado(s) arquivo=43190100131299xxxxxxxxxxxxxxxxxxxxxxx1029014-resNFe.xml dhResp=22/04/2019 11:24:53 indCont=0 maxNSU=000000000012276 tpAmb=1 ultNSU= Então tenho duas questões: Devo usar o comando NFe.DistribuicaoDFe ou NFe.DistribuicaoDFePorUltNSU ? Mesmo o comando NFe.DistribuicaoDFe trazendo os documentos, o campo "ultNSU" vem sempre vazio, fazendo com que eu tenha que pegar o maior NSU da primeira consulta e utilizando este como parâmetro pra próxima.
  15. Bom dia pessoal! De acordo com a NT 2014/002 que trata da Distribuição de DF-e: Faço da seguinte forma: ACBrNFe1.DistribuicaoDFePorChaveNFe(UFtoCUF(edtUF.Text), edtCnpj.Text, edtChave.Text); if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[0].resDFe.chDFe <> '' then if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[0].schema = schprocNFe then ... Quando a nota é manifestada como Ciência da Operação ou Confirmação de Operação, obtenho a nota completa (schema = schprocNFe), mas na Operação não Realizada, somente o resumo (schema = schresNFe). Segundo a NT, não deveria ser disponibilizada a NF completa? Obrigado a todos.
  16. Olá Pessoal, boa noite Estou projetando uma funcionalidade dentro da ferramenta do meu cliente para o mesmo possa obter o resumo da NFes emitidas contra os seus CNPJs, no passado (2017) tínhamos o acbrnfe.consultaDestinadas, esta funcionalidade possibilitava obter o resumo das notas dos nossos fornecedores e após manifestação, tínhamos a possibilidade de efetuar o download do respectivo XML. Com as opções atuais : acbrnfe.DistribuicaoDFE() acbrnfe.DistribuicaoDFeporUlNsu() acbrnfe.DistribuicaoDFeporNSU() Em 80% dos casos, só estou conseguindo baixar os eventos de manifestação referente as minhas próprias notas (meus clientes manifestando meus notas emitidas contra eles), os outros 20%, estão trazendo Manifestações de MDFe e CTe referente as notas de alguns fornecedores, porém o resumos dessas notas não esta sendo baixado. Alguma dica ? É possível monitorar este tipo de informação ( Notas Emitidas contra meus CNPJs) ? Obs.: No passado quando usávamos a opção ConsultaDestinadas, era possível informar por parâmetro o interesse em notas com base CNPJ diferente das minhas , nesse casos baixávamos apenas o resumo das notas emitidas contra nossos CNPJs e que não haviam sido manifestadas ainda. Grato Alexandre Castro
  17. Bom dia pessoal, estou com uma duvida em questão do DistribuiçãoDFe utilizando o ACBrMonitorPlus 1.2.0.18, no arquivo de saída é retornado os dados do retorno e também o XML completo da NFe, porém não consigo extraí-lo completo do arquivo SAI0.TXT, abaixo as formas que tentei baseado no que existia no programa: 1ª tentativa) carrego o arquivo todo em um TIniFiles e tento pegar o xml pelo comando: IniFiles.ReadString(StringList[n], 'XML', ''); - puxa so o inicio do xml (2048 caracteres) 2ª tentativa) carrego o arquivo todo em um TIniFiles e passo cada Section para um TStringList e tento pegar o xml da seguinte forma: StringList.values['XML']; - puxa so o inicio do xml (2048 caracteres) 3ª tentativa) carrego o arquivo todo em um TIniFiles e passo cada Section para um TStringList e tento pegar o xml linha por linha do stringlist, fica faltando parte do xml no meio (aparentemente por quebra de linha se perde alguns dados). Qual seria o procedimento correto para extrair esse XML, através do ACBrMonitorPlus? Desde já obrigado.
  18. Olá Pessoal, Boa tarde, Estou com duvidas sobre a forma como eu uso o webservice da distribuição dfe. O que estou tentando fazer é tentar baixar os XML's emitidos para uma determinada empresa. Estou tentando desenvolver um exemplo antes de começar a desenvolver. No meu exemplo estou consultando por Chave. O método DistribuicaoDFePorChaveNFe tem três parametros: * CNPJ * Cód. UF * Chave. A duvida é que se eu coloco o CNPJ da empresa emitente me dá o retorno de CNPJ Base do emitente está diferente do CNPJ do certificado. E se eu coloco o CNPJ do destinatário que é o detentor do certificado me retorna que a chave não foi encontrada. Como eu faço para baixar o XML da NFe de notas emitidas pelo fornecedor para que o cliente possa importar este xml para a sua base? Vi que existem alguns softwares que faz uso do site da sefaz para baixar o xml. Mas como eles trocaram o Captcha não é mais possível fazer isso. Alguém conhece a forma de como baixar os xml utilizando o webservice da sefaz já que o webservice de download da nfe foi inativado? Obrigado, Isaias Duarte
  19. Caros Amigos. Estou usando o modelo de DistribuicaoDfe que vem no demo do ACBR, consigo baixar as notas emitidas para minha empresa. Mais só consigo jogar no Grid notas de 30 dias pra traz, por ex notas do mês corrente não aparece na pesquisa. Desde já agradeço a ajuda
  20. Bom dia! Existem vários tópicos sobre manifestação de NF-e, porém não encontrei um com a informação que preciso. O que preciso é ao usar o método DistribuiçãoDFe listar as notas encontradas em um Grid. E a partir desse grid, selecionar as notas e enviar os eventos, como manifestar a ciência, baixar o XML, etc. Alguém tem algum exemplo de como listar as notas em um Grid?
  21. Depois de uma semana pesquisando na net, perguntando pra um e pra outro, consegui baixar as notas da sefaz. Estar qui caso algum colega precise. Este primeiro processo é para mostrar as notas que estão na sefaz procedure TTesteWeb.consultarnotasClick(Sender: TObject); var CNPJ, Impresso, sChave, sEmissao, sCNPJ, sNome, sNumero, sSerie, sIEst, sNSU, sTipoNFe: String; Valor: Double; i, j,iEvento, k: integer; sStat,utNSU,ANSU:string; sMotivo:string; sUltimoNSU:string; sTemMais:string; caminho:string; UF, icount, codStatus: Integer; xml:string; begin // ======== Dados do Emitente ============================================= //pego o codigo da Filial que estar fazendo // a pesquisa no meu cadastro de empresas Empresa.Close; Empresa.SQL.Clear; Empresa.SQL.Add('Select * From filial'); Empresa.SQL.Add('Where CodFil = :xCodigo'); Empresa.Params[0].AsString:='1'; Empresa.Active:=True; Empresa.Open; MemoStatus.Lines.Add('------------------------------------------------------'); MemoStatus.Lines.Add(' => Consultando NFe Destinadas'); MemoStatus.Lines.Add('------------------------------------------------------'); Memo1.Text := ''; k := 0; repeat inc(k); CNPJ := ''; ACBrNFe1.DistribuicaoDFePorUltNSU(EMPRESAUF.AsInteger,CNPJ,edtUltNSU.Text ); sStat := IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat); sMotivo := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.xMotivo; if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then sTemMais := 'N' else sTemMais := 'S'; sUltimoNSU := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; // GravaUltimaConsulta; if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 138 then begin MemoStatus.Lines.Add(' Documento Localizado para o Destinatário'); MemoStatus.Lines.Add(' Utilizar o número que esta no campo: Último NSU'); MemoStatus.Lines.Add(' Para uma nova pesquisa.'); MemoStatus.Lines.Add(' '); j := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1; lstChave1.Clear; chkListaNotas.Clear; for i := 0 to j do begin sSerie := ''; sNumero := ''; sCNPJ := ''; sNome := ''; sIEst := ''; sNSU := ''; sEmissao := ''; sTipoNFe := ''; Valor := 0.0; Impresso := ' '; if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.chNFe <> '' then begin // Conjunto de informações resumo da NF-e localizadas. // Este conjunto de informação será gerado quando a NF-e for autorizada ou denegada. sChave := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.chNFe; sSerie := Copy(sChave, 23, 3); sNumero := Copy(sChave, 26, 9); sCNPJ := ''; sNome := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.xNome; sIEst := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.IE; case ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.tpNF of tnEntrada: sTipoNFe := 'E'; tnSaida: sTipoNFe := 'S'; end; sNSU := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.NSU; sEmissao := DateToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.dhEmi); Valor := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.vNF; case ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.cSitNFe of snAutorizado: Impresso := 'A'; snDenegado: Impresso := 'D'; // snCancelada: Impresso := 'C'; end; end; // Registra no Banco de Dados as Notas Retornadas pela Consulta Manifestacao.Close; Manifestacao.SQL.Clear; Manifestacao.SQL.Add('Select * From manifestacao'); Manifestacao.SQL.Add('Where Empresa = :xEmpresa'); Manifestacao.SQL.Add('and Chave = :xChave'); Manifestacao.Params[0].AsString:='1'; Manifestacao.Params[1].AsString:=sChave; Manifestacao.Active:=True; Manifestacao.Open; if not ((ManifestacaoEmpresa.AsString = '1') and (ManifestacaoChave.AsString = sChave)) then begin IncAltDel.SQL.Clear; IncAltDel.SQL.Add('Insert into manifestacao'); IncAltDel.SQL.Add('(Empresa, Chave, CNPJ, Nome, IE, Emissao, Tipo, Valor,'); IncAltDel.SQL.Add('Situacao, Confirmacao, NSU, DataEvento, Protocolo)'); IncAltDel.SQL.Add('Values (:xEmpresa, :xChave, :xCNPJ, :xNome, :xIE, :xEmissao, :xTipo,'); IncAltDel.SQL.Add(':xValor, :xSituacao, :xConfirmacao, :xNSU, :xDataEve, :xProtocolo)'); IncAltDel.Params[0].AsString:='1'; IncAltDel.Params[1].AsString:=sChave; IncAltDel.Params[2].AsString:=''; IncAltDel.Params[3].AsString:=sNome; IncAltDel.Params[4].AsString:=sIEst; IncAltDel.Params[5].AsDateTime:=StrToDate(sEmissao); IncAltDel.Params[6].AsString:=sTipoNFe; IncAltDel.Params[7].AsFloat:=Valor; IncAltDel.Params[8].AsString:=Impresso; IncAltDel.Params[9].AsInteger:=-1; IncAltDel.Params[10].AsString:=sNSU; IncAltDel.Params[11].AsDateTime:=0; IncAltDel.Params[12].AsString:=''; IncAltDel.ExecSQL; end; //Atualizo o sql que mostra as notas no dbgrid MANIFESTACAO.Close; MANIFESTACAO.SQL.Clear; MANIFESTACAO.SQL.Add('select * from manifestacao'); MANIFESTACAO.open; end; // Fim do For end else begin // Nenhum Documento Localizado para o Destinatário if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then begin MemoStatus.Lines.Add(' Nenhum Documento Localizado para o Destinatário'); MemoStatus.Lines.Add(' Utilizar o número que esta no campo: Último NSU'); MemoStatus.Lines.Add(' Para uma nova pesquisa ('+edtUltNSU.Text+').'); MemoStatus.Lines.Add(' '); end else begin MemoStatus.Lines.Add(' Falha ao realizar a consulta.'); MemoStatus.Lines.Add(' ' + sStat + ' - ' + sMotivo); MemoStatus.Lines.Add(' '); end; end; until (k = StrToIntDef(edtConsultas.Text, 1)) or (sTemMais = 'S'); ACBrNFe1.Configuracoes.Arquivos.Salvar := True; if sTemMais = 'S' then Memo1.Text := IntToStr(k) + ' Consultas Realizadas e tem mais Documentos.' else Memo1.Text := IntToStr(k) + ' Consultas Realizadas e não tem mais Documentos.'; end; ========================================= Este segundo processo é para fazer a confirmação de uma nota pela chave, vc pode fazer a confirmação de todas as notas que baixou no primeiro processo e depois efetuar o download. procedure TTesteWeb.EnviarManifesClick(Sender: TObject); var Chave, idLote, CNPJ: string; lMsg: string; begin // manidestação de uma nota especifica pela chave Chave:=''; if not(InputQuery('WebServices Eventos: Manif. Destinatario - Conf. Operacao', 'Chave da NF-e', Chave)) then exit; Chave := Trim(OnlyNumber(Chave)); idLote := '1'; if not(InputQuery('WebServices Eventos: Manif. Destinatario - Conf. Operacao', 'Identificador de controle do Lote de envio do Evento', idLote)) then exit; CNPJ := ''; if not(InputQuery('WebServices Eventos: Manif. Destinatario - Conf. Operacao', 'CNPJ ou o CPF do autor do Evento', CNPJ)) then exit; ACBrNFe1.EventoNFe.Evento.Clear; with ACBrNFe1.EventoNFe.Evento.Add do begin InfEvento.cOrgao := 91; infEvento.chNFe := Chave; infEvento.CNPJ := CNPJ; infEvento.dhEvento := now; infEvento.tpEvento := teManifDestConfirmacao; end; ACBrNFe1.EnviarEvento(StrToInt(IDLote)); with AcbrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento do begin lMsg:= 'Id: '+Id+#13+ 'tpAmb: '+TpAmbToStr(tpAmb)+#13+ 'verAplic: '+verAplic+#13+ 'cOrgao: '+IntToStr(cOrgao)+#13+ 'cStat: '+IntToStr(cStat)+#13+ 'xMotivo: '+xMotivo+#13+ 'chNFe: '+chNFe+#13+ 'tpEvento: '+TpEventoToStr(tpEvento)+#13+ 'xEvento: '+xEvento+#13+ 'nSeqEvento: '+IntToStr(nSeqEvento)+#13+ 'CNPJDest: '+CNPJDest+#13+ 'emailDest: '+emailDest+#13+ 'dhRegEvento: '+DateTimeToStr(dhRegEvento)+#13+ 'nProt: '+nProt; end; ShowMessage(lMsg); MemoResp.Lines.Text := ACBrNFe1.WebServices.EnvEvento.RetWS; memoRespWS.Lines.Text := ACBrNFe1.WebServices.EnvEvento.RetornoWS; LoadXML(ACBrNFe1.WebServices.EnvEvento.RetornoWS, WBResposta); end; ======================================= verifique agora se estas configurações estão certas no seu componente ACBRNFe: propriedades\configurações\arquivos\PathDownload = aqui a pasta onde vc quer salvar os xml. propriedades\configurações\arquivos\PathEvento = Salvar os eventos. propriedades\configurações\arquivos\salvar = true Ainda em configurações de arquivos tem as opções separar por cnpj, ele cria uma pasta para cada cnpj que vc baixar e execute o primeiro processo novamente, ele vai fazer uma nova busca e baixar os que vc confimou teste ai e me diga o resultado Comigo funcionou certinho.
  22. Boa tarde, Tenho uma aplicação que utiliza a Manifestação de Destinatário do ACBr, e estou com uma dúvida. Os procedimentos de manifestação (Ciência da Operação, Desconhecimento, etc) funcionam normalmente, inclusive aparece no site da SEFAZ quando é feito o evento. Porém, observei que não aparece mais na listagem nenhuma Nota Fiscal com XML, apenas Eventos de NF-e. Isso mesmo após ser feito a Ciência da Operação. Tentei realizando a Ciência tanto pela própria aplicação quanto pela aplicação fornecida pelo governo, homologação e produção. Sei que de acordo com o site da SEFAZ não seriam todos os XMLs disponibilizados para download, apenas uma porção, porém não aparece nenhum. Alguém que utiliza a ferramenta para download de XML saberia me informar se isso é normal, ou se tem algum procedimento que precisa ser feito? (Exemplo, "agora é necessário apontar um outro evento que não 'Ciência da Operação' antes do XML ser disponibilizado".) Grato pela atenção.
  23. Bom dia, Sei que já existem muitos tópicos sobre o assunto, porém todos já estão encerrados e estou com algumas dúvidas sobre: Estou realizando o desenvolvimento para saber se existem notas emitidas no nome da empresa e a mesma ainda não se manifestou sobre... pois bem, estou utilizando: ACBrNFe1.DistribuicaoDFe(StrToInt(cUFAutor),CNPJ,'0',''); Na pasta pré indicada eu tenho o retorno de muitos XML, (*-nfe.xml/*-resNFe.xml) que eu imagino que o ACBR já esta descriptografando a tag DocZip e salvando os XMLs. Analisando os retornos percebi, que quando recebemos 1 'chavedeacesso'- resNFe.xml sem um similar 'chavedeacesso'- nfe.xml indica que esta nota não foi manifestada então eu percorro a pasta buscando por Chave de acesso que tenham apenas XML de resumo e após isso manifesto os mesmos.... desta forma eu até estou atingindo meu objetivo, porém não consigo relacionar cada documento a sua NSU... nos XMLs de retorno eles não constam... como salvar na minha tabela o NSU correto para cada chave de acesso?
  24. Bom Dia, Quando uma nota é emitida no CNPJ do meu Cliente, tem um tempo minimo para ele fazer a consulta? ou Imediatamente ele já pode fazer a Rotina que já estará na lista? desde já Obrigado.
  25. olá amigos, preciso de ajuda para efetuar a consulta das NFes no DistribuicaoDFe na versão 4.0, até então já uso a muito tempo esse método na versão 3.10, hoje finalizando os testes de migração do módulo de nota fiscal resolvi testar o Manifesto e para minha surpresa, quando mudei de 3.10 para 4.0 o método não está trazendo mais nenhuma NFe, já zerei o número do NSU para nova busca, e mesmo assim não traz nada, a única mensagem de erro que retorna é "Erro no Schemas xml", alguém já passou por isso? tem alguma ideia do que posso fazer para resolver o DistribuicaoDFe na 4.0 ?
×
×
  • Create New...