Jump to content

2 Dia do ACBr

O Dia da Automação Comercial está chegando!
Inscreva-se

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Saulo Nunes

ANSWERED NFCe - Evento Epec - Schema Invalido

Recommended Posts

Olá Pessoal,

Estou com um erro na hora de enviar um evento EPEC. Falha na validação da Mensagem do Evento: Erro: Schema inválido"

O Erro Ocorre na Unit:   ACBrDFeXsLibXml2

No Evento: TDFeSSLXmlSignLibXml2.Validar ->  schema := xmlSchemaParse(parser_ctxt);

Usei o Modelo abaixo como exemplo:

O Código pra Enviar o EPEC

    ACBrNFe.EventoNFe.Evento.Clear;
    //
    with ACBrNFe.EventoNFe.Evento.New do
     begin
       infEvento.chNFe                  := ChaveNota;
       infEvento.CNPJ                   := EmitCNPJ;
       infEvento.dhEvento               := now;
       infEvento.tpEvento               := teEPECNFe;
       infEvento.cOrgao                 := 35;
       infEvento.nSeqEvento             := 1;
       infEvento.versaoEvento           := '1.00';
       infEvento.detEvento.cOrgaoAutor  := StrToInt(Copy(ChaveNota, 1, 2)); 
       InfEvento.detEvento.tpAutor      := taEmpresaEmitente;
       infEvento.detEvento.verAplic     := frmMain.VersaoSystem;
       InfEvento.detEvento.dhEmi        := ACBrNFe.NotasFiscais.Items[0].NFe.Ide.dhCont;
       InfEvento.detEvento.tpNF         := ACBrNFe.NotasFiscais.Items[0].NFe.Ide.tpNF;
       InfEvento.detEvento.IE           := EmitIE;
       InfEvento.detEvento.vNF          := ACBrNFe.NotasFiscais.Items[0].NFe.Total.ICMSTot.vNF;
       InfEvento.detEvento.vICMS        := ACBrNFe.NotasFiscais.Items[0].NFe.Total.ICMSTot.vICMS;
       InfEvento.detEvento.vST          := ACBrNFe.NotasFiscais.Items[0].NFe.Total.ICMSTot.vST;
       //DEST
       InfEvento.detEvento.dest.UF      := ACBrNFe.NotasFiscais.Items[0].NFe.Dest.EnderDest.UF;
       InfEvento.detEvento.dest.CNPJCPF := ACBrNFe.NotasFiscais.Items[0].NFe.Dest.CNPJCPF ;
       InfEvento.detEvento.dest.IE      := ACBrNFe.NotasFiscais.Items[0].NFe.Dest.IE;
     end;
     ACBrNFe.EnviarEvento(StrToInt(numLote));

O Acbr ta atualizado e estou usando a pasta schema dentro de C:\Acbr\trunk2\Exemplos\ACBrDFe\Schemas\NFe

Para tentar identificar o erro eu mudei a rotina pre ler o xml em anexo

ACBrNFe.EventoNFe.GerarXML;
ACBrNFe.EventoNFe.Gerador.SalvarArquivo('Z:\SAULOx.xml',fgXML);

Pelo que vi não esta sendo montado o xml corretamente, e talvez esse seja o problema. só não sei identificar o porque.

Alguem tem alguma sugestão pra resolver esse problema?

eu tambem ja tentei ajustar o xml conforme o layout Nota Técnica 2014/001 (Evento EPEC) usando  ACBrNFe.EventoNFe.LerXML('Z:\SAULO2.xml'); pra ver ver se envia, e me retorna outro erro. Falha na validação da Mensagem do Evento: 1871 - Element '{http://www.portalfiscal.inf.br/nfe%7DchNFe': This element is not expected. Expected is one of ( {http://www.portalfiscal.inf.br/nfe%7DCNPJ, {http://www.portalfiscal.inf.br/nfe%7DCPF, (Debugando Este erro vi que ele tenta abrir o schema envEvento_v1.00.xsd e logo em seguida retorna este erro)

Obrigado Pessoal, Qualquer ajuda é bem vinda.

 

SAULOx.xml SAULO2.xml

Share this post


Link to post
Share on other sites

Schema inválido, significa que a LimXML2 não conseguiu carregar o arquivo XSD... ou seja, pode ser que o arquivo esteja corrompido..

 


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites
1 minuto atrás, Daniel Simoes disse:

Schema inválido, significa que a LimXML2 não conseguiu carregar o arquivo XSD... ou seja, pode ser que o arquivo esteja corrompido..

 

Oi Daniel, Obrigado pela resposta.

no caso eu ja fiz varios testes incluindo atualizar e reinstalar o acbr.

o ultimo teste eu fiz um checkout em uma pasta no desktop direto do http://svn.code.sf.net/p/acbr/code/trunk2/Exemplos/ACBrDFe/Schemas/NFe/

Outro detalhe, os outros eventos como gerarnfe, cancelar etc.. estao funcionando normalmente

Share this post


Link to post
Share on other sites

Sim.. o que indica que o problema é em algum XSD especifico... Cada WebService irá carregar um (ou vários) XSD...

Com o Debug você conseguirá verificar exatamente, qual o nome do arquivo XSD que está com erro na carga (corrompido)...

Após isso precisamos comparar esse XSD com o original, fornecido pelo Fisco


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites
36 minutos atrás, Saulo Nunes disse:

ACBrNFe.EventoNFe.GerarXML;
ACBrNFe.EventoNFe.Gerador.SalvarArquivo('Z:\SAULOx.xml',fgXML);

Pelo que vi não esta sendo montado o xml corretamente, e talvez esse seja o problema. só não sei identificar o porque.

Em vez desses comandos, use apenas:

ACBrNFe.EnviarEvento(nLote);

Assim o XML já é gerado com o número do lote e assinado, duas das coisas que estão faltando no seu XML.

  • Thanks 1

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites
8 minutos atrás, Daniel Simoes disse:

Sim.. o que indica que o problema é em algum XSD especifico... Cada WebService irá carregar um (ou vários) XSD...

Com o Debug você conseguirá verificar exatamente, qual o nome do arquivo XSD que está com erro na carga (corrompido)...

Após isso precisamos comparar esse XSD com o original, fornecido pelo Fisco

Oi Daniel,

OBrigado Novamente pelo retorno. 

eventoEPEC_v1.00.xsd

No caso fui debugando aki as variaveis até o momento q dá InacessibleValue. acredito que seja o eventoEPECv1.00.xsd.

o problema é q ja subsitui este arquivo pelo da sefaz e 

 

 

1.png

2.png

3.png

1 minuto atrás, BigWings disse:

Em vez desses comandos, use apenas:

ACBrNFe.EnviarEvento(nLote);

Assim o XML já é gerado com o número do lote e assinado, duas das coisas que estão faltando no seu XML.

Oi, obrigado pelo retorno.

no caso eu uso o EnviarEvento da forma como você informou, eu só mudei o meu codigo pra debugar, pq ele nao tava salvando o xml, e eu queria ver como q ele tava alimentando o mesmo.

 

vlw

Share this post


Link to post
Share on other sites
27 minutos atrás, Saulo Nunes disse:

No caso fui debugando aki as variaveis até o momento q dá InacessibleValue. acredito que seja o eventoEPECv1.00.xsd.

Experimente substituir a pasta de Schemas com o arquivo em anexo:

 

eventoEPEC_v1.00.xsd


Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites
6 minutos atrás, BigWings disse:

Experimente substituir a pasta de Schemas com o arquivo em anexo:

 

eventoEPEC_v1.00.xsd 17 kB · 2 downloads

Oi @BigWings Obrigado pelo seu retorno,

agora esta me retornando outro erro: Falha na validação dos dados do Evento: 1871 - Element '{http://www.portalfiscal.inf.br/nfe}vNF': This element is not expected.

Sabes me dizer se este erro eu trato pelo delphi?
 

Share this post


Link to post
Share on other sites
13 minutos atrás, Saulo Nunes disse:

Oi @BigWings Obrigado pelo seu retorno,

agora esta me retornando outro erro: Falha na validação dos dados do Evento: 1871 - Element '{http://www.portalfiscal.inf.br/nfe}vNF': This element is not expected.

Sabes me dizer se este erro eu trato pelo delphi?

Isso indica uma formação errada do XML com relação à tag vNF.

O seu arquivo SAULOx.xml está com a tag no local correto, de acordo com o schema, já o seu arquivo SAULO2.xml está com a mesma dentro do grupo dest.

Esse erro ocorreu chamando o ACBrNFe.EnviarEvento()?


Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites
2 minutos atrás, BigWings disse:

Isso indica uma formação errada do XML com relação à tag vNF.

O seu arquivo SAULOx.xml está com a tag no local correto, de acordo com o schema, já o seu arquivo SAULO2.xml está com a mesma dentro do grupo dest.

Esse erro ocorreu chamando o ACBrNFe.EnviarEvento()?

o arquivo SAULOx.xml foi gerado pelo acbr, já o SAULO2.xml foi eu ajustando usando a Nota Técnica 2014/001 pra tentar identificar se o método enviar ta comerro.

Share this post


Link to post
Share on other sites
4 minutos atrás, Saulo Nunes disse:

o arquivo SAULOx.xml foi gerado pelo acbr, já o SAULO2.xml foi eu ajustando usando a Nota Técnica 2014/001 pra tentar identificar se o método enviar ta comerro.

Lendo os fontes acredito que o ACBr esteja gerando o XML correto, ajustando pra NT 2014.001 no caso do EPEC NFCe.


Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites

Pelo que notamos... o arquivo eventoEPEC_v1.00.xsd, disponibilizado pelo Sefaz, não está em alinhado com a versão 4.0 da NFCe...

Acho que niguém usa o EPEC como contingência para NFCe em SP... tendo em vista que é obrigatório a presença de um SAT, para casos de contingência da NFCe, em SP

Convêm interrogar o SEFAZ, por um Schema de EPEC mais atualizado


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites
Agora, Daniel Simoes disse:

Pelo que notamos... o arquivo eventoEPEC_v1.00.xsd, disponibilizado pelo Sefaz, não está em alinhado com a versão 4.0 da NFCe...

Acho que niguém usa o EPEC como contingência para NFCe em SP... tendo em vista que é obrigatório a presença de um SAT, para casos de contingência da NFCe, em SP

Convêm interrogar o SEFAZ, por um Schema de EPEC mais atualizado

Obrigado Pelo Suporte @Daniel Simoes E @BigWings to desde quinta nisso, vou repassar pro contador e ver o que podemos fazer, assim qeu tiver um feedback posto o resultado aki okay.

 

vlw pessoal

Share this post


Link to post
Share on other sites

Boa tarde Saulo,

Veja esse fragmento de código do ACBr:

            if sModelo = '55' then
              GerarDestNFe(Evento.Items[i])
            else begin
              GerarDestNFCe(Evento.Items[i]);
              // No EPEC da NFC-e segundo o schema as TAGs vNF e vICMS estão fora do grupo dest e não
              // tem a TAG vST.
              Gerador.wCampo(tcDe2, 'P32', 'vNF',   01, 15, 1, Evento.Items[i].InfEvento.detEvento.vNF, DSC_VNF);
              Gerador.wCampo(tcDe2, 'P33', 'vICMS', 01, 15, 1, Evento.Items[i].InfEvento.detEvento.vICMS, DSC_VICMS);
            end;

Os especialistas da SEFAZ tiveram a criatividade absurda de criar 2 layouts diferentes para o mesmo tipo de evento.

Para o EPEC da NF-e os campos: vNF, vICMS e cST são obrigatórios e estão dentro do grupo dest.

Já no caso da NFC-e eles estão fora e só tem os campos vNF e vICMS.

Estou estudando uma maneira de resolver o problema de validação da aera especifica do evento, visto que a área genérica é igual para todos os eventos.

  • Like 1

Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites
28 minutos atrás, Italo Jurisato Junior disse:

Boa tarde Saulo,

Veja esse fragmento de código do ACBr:

            if sModelo = '55' then
              GerarDestNFe(Evento.Items[i])
            else begin
              GerarDestNFCe(Evento.Items[i]);
              // No EPEC da NFC-e segundo o schema as TAGs vNF e vICMS estão fora do grupo dest e não
              // tem a TAG vST.
              Gerador.wCampo(tcDe2, 'P32', 'vNF',   01, 15, 1, Evento.Items[i].InfEvento.detEvento.vNF, DSC_VNF);
              Gerador.wCampo(tcDe2, 'P33', 'vICMS', 01, 15, 1, Evento.Items[i].InfEvento.detEvento.vICMS, DSC_VICMS);
            end;

Os especialistas da SEFAZ tiveram a criatividade absurda de criar 2 layouts diferentes para o mesmo tipo de evento.

Para o EPEC da NF-e os campos: vNF, vICMS e cST são obrigatórios e estão dentro do grupo dest.

Já no caso da NFC-e eles estão fora e só tem os campos vNF e vICMS.

Estou estudando uma maneira de resolver o problema de validação da aera especifica do evento, visto que a área genérica é igual para todos os eventos.

vlw pelo feedback @Italo Jurisato Junior, kkkkkk passei por esse trecho no debug mas tava tao focado em achar o schema q nem parei pra analisar a montagem do xml. acho que o jeito vai ser ter 2 schemas de acordo com o modelo. vou preparar um email pra sefaz e vou inserir essas informações. obrigado pelo suporte

  • Like 1

Share this post


Link to post
Share on other sites

Saulo,

Vamos aos testes.

Copie para dentro da pasta: ...\Exemplos\ACBrDFe\Schemas\NFe  os schemas abaixo.

e110140NFe_v1.00.xsd

e110140NFCe_v1.00.xsd

Copie para dentro da pasta: ...\Fontes\ACBrDFe\ACBrNFe o fonte abaixo.

ACBrNFe.pas

Faça um novo teste de envio de EPEC de uma NFC-e.

  • Like 1

Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites
4 horas atrás, Italo Jurisato Junior disse:

Saulo,

Vamos aos testes.

Copie para dentro da pasta: ...\Exemplos\ACBrDFe\Schemas\NFe  os schemas abaixo.

e110140NFe_v1.00.xsd 4 kB · 1 download

e110140NFCe_v1.00.xsd 4 kB · 1 download

Copie para dentro da pasta: ...\Fontes\ACBrDFe\ACBrNFe o fonte abaixo.

ACBrNFe.pas 30 kB · 2 downloads

Faça um novo teste de envio de EPEC de uma NFC-e.

@Italo Jurisato Junior mto obrigado, agora funcionou e gerou o xml. embora esteja dando erro 500 do servidor, mas é outro problema.
 

"mensagem": " Erro Causado com a Mensagem : \r\nErro Interno: 0\r\nErro HTTP: 500\r\nURL: https://homologacao.nfce.epec.fazenda.sp.gov.br/EPECws/RecepcaoEPEC.asmx\r\n",
 
o xml gerado ta em anexo.
 
 
 

1-ped-eve.xml

Share this post


Link to post
Share on other sites

Não necessariamente... o erro 500 ocorreria se o servidor não compreendesse o SOAP de entrada...

Compare o ped-eve-soap.xml  com o do site do servidor


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites
13 minutos atrás, Daniel Simoes disse:

Não necessariamente... o erro 500 ocorreria se o servidor não compreendesse o SOAP de entrada...

Compare o ped-eve-soap.xml  com o do site do servidor

oi @Daniel Simoes desculpe a ignorancia, mas esse arquivo ped-eve-soap.xml teria q ser gerado junto com o 1-ped-eve.xml? o unico arquivo gerado que tenho aki é o ped-eve.xml

Share this post


Link to post
Share on other sites
12 horas atrás, Saulo Nunes disse:

 mto obrigado, agora funcionou e gerou o xml. embora esteja dando erro 500 do servidor, mas é outro problema.

Experimente configurar o componente para a versão 3.10 antes do envio do evento.

11 horas atrás, Saulo Nunes disse:

oi @Daniel Simoes desculpe a ignorancia, mas esse arquivo ped-eve-soap.xml teria q ser gerado junto com o 1-ped-eve.xml? o unico arquivo gerado que tenho aki é o ped-eve.xml

Definindo a propriedade:

ACBrNFe.Configuracoes.WebServices.Salvar := True;

São gravados os arquivos XML envelopados (*-soap.xml) que são os efetivamente enviados para o webservice.

  • Like 1

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites
25 minutos atrás, BigWings disse:

Experimente configurar o componente para a versão 3.10 antes do envio do evento.

Definindo a propriedade:

ACBrNFe.Configuracoes.WebServices.Salvar := True;

São gravados os arquivos XML envelopados (*-soap.xml) que são os efetivamente enviados para o webservice.

oi @BigWings vlw pelo retorno. ja ativei pra salvar o soap. o erro continua dando 500. confesso que agora estou perdido. alguma indicação de pesquisa/leitura?

1-ped-eve-soap.xml 1-ped-eve.xml

Share this post


Link to post
Share on other sites
6 minutos atrás, Saulo Nunes disse:

oi @BigWings vlw pelo retorno. ja ativei pra salvar o soap. o erro continua dando 500. confesso que agora estou perdido. alguma indicação de pesquisa/leitura?

1-ped-eve-soap.xml 5 kB · 0 downloads 1-ped-eve.xml 5 kB · 0 downloads

O que parece é que esse webservice não foi atualizado pra versão 4.00 do XML e ainda está esperando um XML SOAP no formato antigo.

Você configurou o componente pra versão 3.10?

  • Thanks 1

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites
6 minutos atrás, BigWings disse:

O que parece é que esse webservice não foi atualizado pra versão 4.00 do XML e ainda está esperando um XML SOAP no formato antigo.

Você configurou o componente pra versão 3.10?

Configuracoes.Geral.VersaoDF              := TpcnVersaoDF(Self.VersaoDF); //ve400

To passando 4.00

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...