Jeanbiazon Postado 21 Outubro, 2013 Postado 21 Outubro, 2013 Boa tarde.... Na hora de gerar um NFce com justificativa e validar o arquivo esta dando esse erro... Alertas:TAG:<ide> ID:B28/dhCont(Data e Hora de entrada em contingencia) - Tamanho maior que o máximo permitido [2013-10-15T14:25:00-04:00]... Porem no arquivo esta certo... <dhCont>2013-10-15T14:20:00-04:00</dhCont><xJust>teste de justificativa de envio em modo de contingencia</xJust>
Roberto.Godinho Postado 22 Outubro, 2013 Postado 22 Outubro, 2013 Bom dia Jean, da uma conferida se você informou corretamente a propriedade "acbr.Configuracoes.Geral.ModeloDF := moNFCe", e no grupo Ide do acbr schema := TsPL006 e Versao := 3 e você deve ter em sua posse os schemas XML correspondente com a versão (PL 006) 1
Jeanbiazon Postado 22 Outubro, 2013 Autor Postado 22 Outubro, 2013 Em 22/10/2013 at 10:51, Roberto.Godinho disse: Bom dia Jean, da uma conferida se você informou corretamente a propriedade "acbr.Configuracoes.Geral.ModeloDF := moNFCe", e no grupo Ide do acbr schema := TsPL006 e Versao := 3 e você deve ter em sua posse os schemas XML correspondente com a versão (PL 006) Roberto bom dia.... infelizmente estou utilizando o acbrnfemonitor ja compilado, sou programador em vb, e não tenho como recompilar os fontes, então fico aguardando a colaboração dos colegas programadores em Delphi... então não tenho como responder sobre esse configuração.... porém o schema esta 3.0, transmito e recebo normalmente, somente o modo contingencia que esta dando esse problema.... Muito obrigado....
Roberto.Godinho Postado 22 Outubro, 2013 Postado 22 Outubro, 2013 aaaahhhh lembrei, tive este problema com o campo dhEmi se não me engano, fui verificar o fonte e esta incorreto a forma como é gerado a TAG, por isso esta retornando o erro. Está sendo informado tamanho 19 ao gerar o campo, como é o tipo tcStr o tamanho deve ser 25 que corresponde ao tamanho total da tag. (2013-10-15T14:20:00-04:00) como está: if (nfe.Ide.dhCont > 0) or (nfe.Ide.xJust <> '') then begin if nfe.infNFe.Versao >= 3 then Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.ide.dhCont) + GetUTC(CodigoParaUF(nfe.ide.cUF), nfe.ide.dhCont), DSC_DHCONT) else Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.Ide.dhCont), DSC_DHCONT); Gerador.wCampo(tcStr, 'B29', 'xJust ', 01,256, 1, nfe.ide.xJust, DSC_XJUSTCONT); end; como deve ser: if (nfe.Ide.dhCont > 0) or (nfe.Ide.xJust <> '') then begin if nfe.infNFe.Versao >= 3 then Gerador.wCampo(tcStr, 'B28', 'dhCont ', 25, 25, 1, DateTimeTodh(nfe.ide.dhCont) + GetUTC(CodigoParaUF(nfe.ide.cUF), nfe.ide.dhCont), DSC_DHCONT) else Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.Ide.dhCont), DSC_DHCONT); Gerador.wCampo(tcStr, 'B29', 'xJust ', 01,256, 1, nfe.ide.xJust, DSC_XJUSTCONT); end; Alterei os fontes e anexei ao post, se alguém puder subir para o SVN seria ótimo. pcnNFeW.pas
Solution Jeanbiazon Postado 22 Outubro, 2013 Autor Solution Postado 22 Outubro, 2013 (editado) Em 22/10/2013 at 12:51, Roberto.Godinho disse: aaaahhhh lembrei, tive este problema com o campo dhEmi se não me engano, fui verificar o fonte e esta incorreto a forma como é gerado a TAG, por isso esta retornando o erro. Está sendo informado tamanho 19 ao gerar o campo, como é o tipo tcStr o tamanho deve ser 25 que corresponde ao tamanho total da tag. (2013-10-15T14:20:00-04:00) como está: if (nfe.Ide.dhCont > 0) or (nfe.Ide.xJust <> '') then begin if nfe.infNFe.Versao >= 3 then Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.ide.dhCont) + GetUTC(CodigoParaUF(nfe.ide.cUF), nfe.ide.dhCont), DSC_DHCONT) else Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.Ide.dhCont), DSC_DHCONT); Gerador.wCampo(tcStr, 'B29', 'xJust ', 01,256, 1, nfe.ide.xJust, DSC_XJUSTCONT); end; como deve ser: if (nfe.Ide.dhCont > 0) or (nfe.Ide.xJust <> '') then begin if nfe.infNFe.Versao >= 3 then Gerador.wCampo(tcStr, 'B28', 'dhCont ', 25, 25, 1, DateTimeTodh(nfe.ide.dhCont) + GetUTC(CodigoParaUF(nfe.ide.cUF), nfe.ide.dhCont), DSC_DHCONT) else Gerador.wCampo(tcStr, 'B28', 'dhCont ', 19, 19, 1, DateTimeTodh(nfe.Ide.dhCont), DSC_DHCONT); Gerador.wCampo(tcStr, 'B29', 'xJust ', 01,256, 1, nfe.ide.xJust, DSC_XJUSTCONT); end; Alterei os fontes e anexei ao post, se alguém puder subir para o SVN seria ótimo. Roberto, desculpe abusar, mas vc poderia compilar e enviar aqui no forum esse executavel ??? Não trabalho com Delphi apenas VB... e estou utilizando a troca de arquivos txt.... instalei o Delphi aqui mas ainda não tive tempo de dar uma olhada... Muito obrigado se puder me ajudar.... Editado 22 Outubro, 2013 por Jeanbiazon
Elcyberg Postado 31 Março, 2014 Postado 31 Março, 2014 Eu fiz esta mudança a titulo de teste, alterando de 19 para 25 e o que aconteceu foi que começou a aparecer a seguinte mensagem : Falha na validação dos dados na nota 29 (Numero atual da nota) Cancelei a mudança , atualizei o Acbr - e agora esta dando o "mesmo erro" , isso quando tento rodar nota em contingência. fui olhar os fontes e esta mudança foi feita no pcnNFeW.pas do acbr. como se pode resolver isso e rodar notas em contingência ?
Elcyberg Postado 31 Março, 2014 Postado 31 Março, 2014 O problema de contingência resolvido, com um try para simplesmente não colocar mensagem quando não tiver internet. contudo após atualizar o Acbr monitor esta dando um erro: na função enviar : if acbrnfe1.NotasFiscais.Count = 1 then acbrnfe1.Enviar(1, True, True) else acbrnfe1.Enviar(1, True, False); da um erro e para e grava um xml com estes dizeres Nome. pro-rec.xml A página XML não pode ser exibida Não é possível exibir a entrada XML usando a folha de estilos . Corrija o erro e clique no botão Atualizar ou tente novamente mais tarde. O documento XML deve ter um elemento de nível superior. Erro ao processar o recurso 'file:///C:/Nfce/Nfce/-pro-rec.xml'.
Consultores Italo Giurizzato Junior Postado 31 Março, 2014 Consultores Postado 31 Março, 2014 Boa tarde Elcyberg, Post o XML como anexo. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 31 Março, 2014 Postado 31 Março, 2014 Italo , como vai , boa tarde. vou postar os xml como você solicitou. 1-env-lot.xml 20140331153346-ped-sta.xml 20140331153351-sta.xml 13140306950944000106650010000000241000000240-nfe.xml
Elcyberg Postado 31 Março, 2014 Postado 31 Março, 2014 Italo , o que tenho a acrescentar é o seguinte. Estava fazendo normal na homologação , enviando , e informando no xml que o arquivo foi recebido, atualizei o acbr monitor e fiz a contingência, e coloquei o try , try if ACBrNFe1.WebServices.StatusServico.Executar = true then begin vFuncionando := 'S'; ShowMessage(ACBrNFe1.WebServices.StatusServico.Msg); end; except vFuncionando := 'N'; end; e coloquei quando contingência if vFuncionando = 'N' then // se normal ou contingência begin ide.dhCont:= now; // para corrigir o erro que dava de data Ide.xJust := 'NOTA FISCAL EMITIDA EM CONTINGÊNCIA'; end; a contingência imprimiu certinho , mais passou a dar esse erro , na função enviar.
Consultores Italo Giurizzato Junior Postado 31 Março, 2014 Consultores Postado 31 Março, 2014 Boa tarde Elcyberg, Abra a unit ACBrNFeWebServices e procure pela linha: if ((FConfiguracoes.Geral.ModeloDF = moNFCe) or (FConfiguracoes.Geral.VersaoDF = ve310)) and not (FConfiguracoes.WebServices.UFCodigo in [23, 31]) then // CE, MG altere acrescentando o código 13: if ((FConfiguracoes.Geral.ModeloDF = moNFCe) or (FConfiguracoes.Geral.VersaoDF = ve310)) and not (FConfiguracoes.WebServices.UFCodigo in [13, 23, 31]) then // CE, MG Se não me falha a memória essa alteração é em 3 lugares. Altere e teste novamente. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 31 Março, 2014 Postado 31 Março, 2014 Italo , funcionou perfeitamente. Valeu , valeu mesmo.
Elcyberg Postado 19 Abril, 2014 Postado 19 Abril, 2014 Bom dia Italo. tenho a seguinte duvida , estou tentando fazer o envio de notas em contingência, as notas imprimem em contingencia sem problemas , gera o xml normalmente , e estou precisando enviar estas notas, a pergunta é a seguinte : a função ACBrNFe1.Consultar; que esta no demo "adicionar nfeProc ao xml" faz este envio completo, gerando as informações de envio e gerando o numero de protocolo , ou as contingências devem serem enviados de outra maneira. fico no aguardo de sua resposta.
Consultores Italo Giurizzato Junior Postado 21 Abril, 2014 Consultores Postado 21 Abril, 2014 Boa noite Elcyberg, Quando o emitente esta com algum problema técnico que impede o envio do XML para a SEFAZ, o que deve ser feito? 1. Alterar o tpEmi de normal para contingência, informar a data e hora de contingência e mais o motivo, gerar novamente o XML; 2. Imprimir o DANFE; 3. Quando os problemas técnicos forem contornados o XML sem gerado com o tpEmi de contingência, etc deve ser enviado para a SEFAZ. O comando de envio é o mesmo usado para o envio normal. O Consultar é usado apenas para consultar a situação atual de uma nota previamente enviada. O Enviar: Gera o XML, assina, valida, envia, se tudo OK acrescenta o protocolo de autorização e imprimi o DANFE. O Consultar: Consulta a situação atual da Nota, se o componente estiver configurado para atualizar o XML o mesmo recebera o protocolo de autorização caso este não tenha. 1 Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 25 Abril, 2014 Postado 25 Abril, 2014 Boa noite , Italo. Conforme sua orientação , criei o modulo de envio de contingência , assim que concluir meus testes lhe informo do resultado. contudo tem ocorrido o seguinte quando envio a Nfc-e. No primeiro envio do dia , eu acredito quando vai verificar se tem internet. não funciona , simplesmente para o programa, tenho que dar Ctrl+alt-del , entrar no sistema de novo , ai roda normal, rapido , uma nota após a outra. Somente a primeira do dia não sai , tem que fazer algo antes para isso não acontecer?
Consultores Italo Giurizzato Junior Postado 25 Abril, 2014 Consultores Postado 25 Abril, 2014 Boa tarde Elcyberg, O Certificado é um A1 ou A3? O meu cliente esta usando agora o A3, quando ele vai emitir a primeira nota ele clica no botão consultar status, aparece a tela solicitando o PIN e a consulta é feita e apresentada. Feito isso ele envia, cancela, em fim enquanto não sair da aplicação não aparece a tela pedindo o PIN e funciona 100%. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 27 Abril, 2014 Postado 27 Abril, 2014 Boa noite , Italo Conforme sua orientação coloquei um botão para a verificação de status de serviço e acredito que resolverá o problema do primeiro envio do dia , mais não estou conseguindo fazer corretamente o envio da contingência , no item 1 de sua orientação tem : 1. Alterar o tpEmi de normal para contingência, informar a data e hora de contingência e mais o motivo, gerar novamente o XML; Eu tenho que gerar novamente o xml , pois o quando faço em contingencia o xml grava normalmente com tpEmi,motivo , ficando somente sem a parte do protNFe que é colocado quando da atualização, fiquei na duvida. estou fazendo um loop para enviar todas as contingências assim while DmMovimento.SqlNotaVendaNfceC.RecordCount > 0 do begin DmMovimento.SqlNotaVendaNfceC.Close; DmMovimento.SqlNotaVendaNfceC.Sql.clear; DmMovimento.SqlNotaVendaNfceC.Sql.Add('SELECT VendaNfce.*'); DmMovimento.SqlNotaVendaNfceC.Sql.Add('FROM VENDANFCE '); DmMovimento.SqlNotaVendaNfceC.SQL.Add('WHERE VendaNfce.Protocolo ="" ' ); DmMovimento.SqlNotaVendaNfceC.Open; ACBrNfe1.NotasFiscais.Clear; ACBrNfe1.NotasFiscais.LoadFromFile('\Nfce\Nfce\'+DBGrid3.Fields[2].AsString+'-nfe.xml'); //campo 2 = chave de acesso ex. 13140406950944000106650010000000479000000472 if acbrNfe1.NotasFiscais.Count = 1 then acbrNfe1.Enviar(1, True, True) else acbrNfe1.Enviar(1, True, False); DmMovimento.TbVendaNfce.Locate('Numerovenda',DBGrid3.Fields[1].AsString,[]); // campo 1 numero da venda vID:=ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.chNFe; vDigVal:=ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.digVal; vDhRecebimento:=DateTostr(ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.dhRecbto); vProtocolo:=ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.nProt; // gravo o protocolo e chave de acesso no meu arquivo de controle DmMovimento.TbVendaNfce.Edit; DmMovimento.TbVendaNfceChaveAcesso.AsString:=ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.chNFe; DmMovimento.TbVendaNfceProtocolo.AsString:=ACBrNfe1.NotasFiscais.Items[0].NFe.procNFe.nProt; DmMovimento.TbVendaNfce.Post; DmMovimento.TbVendaNfce.Refresh; refaço o while acima e verifico ate o SqlNotaVendaNfceC.RecordCount = 0 , ai acaba e sai end; Peguei o exemplo do ACBrNFe_demo 1
Consultores Italo Giurizzato Junior Postado 28 Abril, 2014 Consultores Postado 28 Abril, 2014 Bom dia Elcyberg, Lembre-se que em modo de contingência, temos: 1. O XML é gerado conforme já mencionado e o DANFE - NFC-e é impresso. 2. Quando a conexão com a SEFAZ se restabelecer os XMLs gerados no ( 1. ) são enviados para que os mesmos sejam validados e autorizados pela SEFAZ, e consequentemente recebam o protocolo de autorização fincando assim completos, ou seja, assinado e protocolado. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 3 Maio, 2014 Postado 3 Maio, 2014 Boa noite, Italo Conforme suas orientações e após os testes realizados , o envio das Nfc-e em contingência esta concluído, processando e enviando todas as notas sem problemas. Agora tenho a seguinte situação , no envio da Nfc-e ainda persiste em dar o erro 219, ao que parece e que o qr code tem que ter o mesmo horário do <dhEmi> informado igual ate nos segundos , essa informação esta correta ? Esse erro é o que falta corrigir para a Nfc-e ficar 100 % e obrigado pela sua atenção. Suas orientações estão sendo fundamentais.
Consultores Italo Giurizzato Junior Postado 5 Maio, 2014 Consultores Postado 5 Maio, 2014 Bom dia Elcyberg, O que vem a ser esse erro 219? No XML da NFC-e como esta aparecendo o valor de dhEmi? A dhEmi antes de ser convertida para HEX é preciso que ela seja exatamente igual ao conteúdo da TAG dhEmi que por sinal possui a Data, Hora e o UTC, exemplo: "2014-05-05T08:00:15-03:00" Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus
Elcyberg Postado 13 Maio, 2014 Postado 13 Maio, 2014 Boa Noite Icaro. Achei a falha que causava o erro 219 no Qr code , eu não estava informando corretamente o numero do token, agora no envio da Nfc-e o Qr code esta correto. Mais uma Vez agradeço a sua atenção. elcyberg@gmail.com
fersoluinfo Postado 19 Maio Postado 19 Maio Em 21/04/2014 at 22:49, Italo Giurizzato Junior disse: Boa noite Elcyberg, Quando o emitente esta com algum problema técnico que impede o envio do XML para a SEFAZ, o que deve ser feito? 1. Alterar o tpEmi de normal para contingência, informar a data e hora de contingência e mais o motivo, gerar novamente o XML; 2. Imprimir o DANFE; 3. Quando os problemas técnicos forem contornados o XML sem gerado com o tpEmi de contingência, etc deve ser enviado para a SEFAZ. O comando de envio é o mesmo usado para o envio normal. O Consultar é usado apenas para consultar a situação atual de uma nota previamente enviada. O Enviar: Gera o XML, assina, valida, envia, se tudo OK acrescenta o protocolo de autorização e imprimi o DANFE. O Consultar: Consulta a situação atual da Nota, se o componente estiver configurado para atualizar o XML o mesmo recebera o protocolo de autorização caso este não tenha. Expandir Bom dia, no passo 3 desta explicação, deve enviar o xml correto? Nesta etapa eu envio o xml com o tpEmi=Contigencia ou mudo o tpEmi=Normal?
Moderadores Juliomar Marchetti Postado 19 Maio Moderadores Postado 19 Maio Em 19/05/2025 at 14:44, fersoluinfo disse: Bom dia, no passo 3 desta explicação, deve enviar o xml correto? Nesta etapa eu envio o xml com o tpEmi=Contigencia ou mudo o tpEmi=Normal? Expandir tu envia para o servidor normal o xml original, portanto tu não muda nada no xml. só no componente para enviar ao servidor por envio normal Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: juliomar_m@yahoo.com.br http://www.juliomarmarchetti.com.br
fersoluinfo Postado 19 Maio Postado 19 Maio Entendi, no caso, uso o acbrmonitor. Faço esse chaveamento nele então. Obrigado
Moderadores Juliomar Marchetti Postado 19 Maio Moderadores Postado 19 Maio Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico. Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: juliomar_m@yahoo.com.br http://www.juliomarmarchetti.com.br
Recommended Posts