Problema na Assinatura do XML
Moderador: Moderadores
-
cleberconde
- Usuário Nível 1

- Mensagens: 12
- Registrado em: 03 Abr 2019 10:26
- Localização: caratinga
Problema na Assinatura do XML
Pessoal,,
Depois de muito teste, consegui fazer funciona a SefazClass , no xHarbour com Fivewin.
To conseguindo enviar, e receber o protocolo de envio e recebimento do lote.
No retorno da aprovacao do xml, to recebendo o seguinte : Rejeicao: Falha no schema XML
Peguei o xml antes de assinar e validei ele online na http://validadornfe.tecnospeed.com.br/ e deu XML VALIDO OK
salvei o xml assinado e tentei validar ele online na http://validadornfe.tecnospeed.com.br/ me deu o seguinte erro:
O XML é inválido. Erro: "An invalid character was found in text content. Line: 1 MIIHvDCCBaSgAwIBAgIIMHkZByZUp6AwDQYJKoZI"
o Certificado Digital nao achei nada errado. Instalei a CAPICOM.
Alguem pode me dar uma ideia do que pode ser ?
Anexei os dois xml aqui
Retorno:
<erro text="*ERRO* NFeGeraAutorizado() Não autorizado" /><ns2:nfeResultMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NFeAutorizacao4" xmlns:ns2="http://www.portalfiscal.inf.br/nfe/wsdl ... onsReciNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="4.00">
<tpAmb>2</tpAmb>
<verAplic>14.4.6</verAplic>
<nRec>310000067927819</nRec>
<cStat>215</cStat>
<xMotivo>Rejeicao: Falha no schema XML</xMotivo>
<cUF>31</cUF>
<dhRecbto>2019-10-17T11:10:29-03:00</dhRecbto>
</retConsReciNFe></ns2:nfeResultMsg>
Depois de muito teste, consegui fazer funciona a SefazClass , no xHarbour com Fivewin.
To conseguindo enviar, e receber o protocolo de envio e recebimento do lote.
No retorno da aprovacao do xml, to recebendo o seguinte : Rejeicao: Falha no schema XML
Peguei o xml antes de assinar e validei ele online na http://validadornfe.tecnospeed.com.br/ e deu XML VALIDO OK
salvei o xml assinado e tentei validar ele online na http://validadornfe.tecnospeed.com.br/ me deu o seguinte erro:
O XML é inválido. Erro: "An invalid character was found in text content. Line: 1 MIIHvDCCBaSgAwIBAgIIMHkZByZUp6AwDQYJKoZI"
o Certificado Digital nao achei nada errado. Instalei a CAPICOM.
Alguem pode me dar uma ideia do que pode ser ?
Anexei os dois xml aqui
Retorno:
<erro text="*ERRO* NFeGeraAutorizado() Não autorizado" /><ns2:nfeResultMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NFeAutorizacao4" xmlns:ns2="http://www.portalfiscal.inf.br/nfe/wsdl ... onsReciNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="4.00">
<tpAmb>2</tpAmb>
<verAplic>14.4.6</verAplic>
<nRec>310000067927819</nRec>
<cStat>215</cStat>
<xMotivo>Rejeicao: Falha no schema XML</xMotivo>
<cUF>31</cUF>
<dhRecbto>2019-10-17T11:10:29-03:00</dhRecbto>
</retConsReciNFe></ns2:nfeResultMsg>
- Anexos
-
- xml-Assinado-nfe.xml
- O xml gerado
- (6.54 KiB) Baixado 367 vezes
-
- xml nfe.xml
- o xml assinado
- (3.27 KiB) Baixado 379 vezes
-
cleberconde
- Usuário Nível 1

- Mensagens: 12
- Registrado em: 03 Abr 2019 10:26
- Localização: caratinga
Problema na Assinatura do XML
so para complementar a forma como estou usando a SefazClass
cDocXml -> Conteudo do xml
oSefaz := SefazClass():New()
oSefaz:cCertificado := cCertificado
oSefaz:cNFCE := "N"
oSefaz:cAmbiente := cTipoAmbiente
oSefaz:cUF := "MG"
oSefaz:NfeLoteEnvia( cDocXml, "1" )
Ate mais
Cleber
cDocXml -> Conteudo do xml
oSefaz := SefazClass():New()
oSefaz:cCertificado := cCertificado
oSefaz:cNFCE := "N"
oSefaz:cAmbiente := cTipoAmbiente
oSefaz:cUF := "MG"
oSefaz:NfeLoteEnvia( cDocXml, "1" )
Ate mais
Cleber
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Coloquei no validador RS
https://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx
Ao que parece é o fim de arquivo CTRL-Z.
Ajuste a forma de salvar, ao que parece está em formato DOS.
No Harbour: hb_MemoWrit( "arquivo", "txt" )
No XHarbour, se não me engano: MemoWrit( "arquivo", "txt", .T. )
https://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx
Ao que parece é o fim de arquivo CTRL-Z.
Ajuste a forma de salvar, ao que parece está em formato DOS.
No Harbour: hb_MemoWrit( "arquivo", "txt" )
No XHarbour, se não me engano: MemoWrit( "arquivo", "txt", .T. )
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
cleberconde
- Usuário Nível 1

- Mensagens: 12
- Registrado em: 03 Abr 2019 10:26
- Localização: caratinga
Problema na Assinatura do XML
Retirei o caracter e agora da Assinatura INVALIDA DO XML, peguei o xml e validei no site que passou e deu mesmo ASSINATURA INVALIDA
alguma coisa da CAPICON QUE INSTALEI SERA ?
alguma coisa da CAPICON QUE INSTALEI SERA ?
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Vamos por partes:cleberconde escreveu:Retirei o caracter e agora da Assinatura INVALIDA DO XML, peguei o xml e validei no site que passou e deu mesmo ASSINATURA INVALIDA
alguma coisa da CAPICON QUE INSTALEI SERA ?
No validador reclama assinatura inválida.
Conteúdo do XML ok.
Certificado ok.
Por enquanto, podemos considerar assinatura correta, e algum caractere especial do XML.
Alterei pelo bloco de notas, muitas vezes o bloco de notas NÃO mostra todos os caracteres.
E apenas olhar é complicado.
Vamos testar caracteres "diferentes".
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Nenhum caractere inválido.
Assinou novamente depois de remover o caractere, pra ver se ficou diferente?
De repente no XML ANTES de assinar também tinha o Chr(26).
Assinou novamente depois de remover o caractere, pra ver se ficou diferente?
De repente no XML ANTES de assinar também tinha o Chr(26).
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Problema na Assinatura do XML
Pelo erro, quase certeza que a estrutura do XML está faltando algo, ou sobrando algo ou algo que é obrigatório constar está mal formatado, tanto pelo lado da TAG ou talvez pelo conteúdo, pesquise sobre caracteres que não são aceitos em um XML de nota.
Marcelo Neves
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Ia dizer que não achei nada errado, mas....
Se não me engano, esses valores precisam de decimais.
Algumas rotinas de assinatura, ao usarem schemma podem colocar 0.00 nesses lugares, corrigindo automaticamente.
Esse tipo de coisa é que dá diferença de assinatura: algumas correções automáticas.
Mesmo assim, fica estranho não mostrar erro na validação do XML.
Por enquanto é uma possibilidade, mas depende de confirmação.
Código: Selecionar todos
<ICMSTot><vBC>0</vBC><vICMS>0</vICMS><vICMSDeson>0</vICMSDeson><vFCP>0</vFCP><vBCST>0</vBCST><vST>0</vST><vFCPST>0</vFCPST><vFCPSTRet>0
Algumas rotinas de assinatura, ao usarem schemma podem colocar 0.00 nesses lugares, corrigindo automaticamente.
Esse tipo de coisa é que dá diferença de assinatura: algumas correções automáticas.
Mesmo assim, fica estranho não mostrar erro na validação do XML.
Por enquanto é uma possibilidade, mas depende de confirmação.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Testei isso, e aproveitei pra melhorar um pouco a validação simples dentro da sefazclass.MSDN escreveu:pesquise sobre caracteres que não são aceitos em um XML de nota.
Código: Selecionar todos
PROCEDURE Main
LOCAL cTxt, oSefaz
SetMode( 40, 100 )
cTxt := MemoRead( "d:\temp\xml-assinado-nfe.xml" )
oSefaz := SefazClass():New()
? oSefaz:ValidaXml( cTxt )
Inkey(0)
RETURN
Tá na sefazclass, não precisa copiar daqui.
Era só esta parte, pra testar o abre/fecha:
Código: Selecionar todos
STATIC FUNCTION SingleXmlValidate( cXml )
LOCAL nPos, aTagsAbre := {}, cTmp, oElement, cLetra, cTxtErro := ""
DO WHILE .T.
nPos := hb_At( "<", cXml, nPos )
IF nPos < 1
EXIT
ENDIF
IF Substr( cXml, nPos + 1, 1 ) == "/"
IF ! ProcFecha( Substr( cXml, nPos, hb_At( ">", cXml, nPos ) - nPos ), aTagsAbre )
EXIT
ENDIF
ELSE
cTmp := Substr( cXml, nPos, hb_At( ">", cXml, nPos ) - nPos + 1 )
IF ! "/>" $ cTmp .AND. ! "/ >" $ cTmp
AAdd( aTagsAbre, cTmp )
//? "Abriu " + Atail( aTagsAbre )
ENDIF
ENDIF
nPos := nPos + 3
ENDDO
IF Len( aTagsAbre ) != 0
cTxtErro += "Em aberto" + Space(3)
FOR EACH oElement IN aTagsAbre
cTxtErro += oElement + Space(3)
NEXT
RETURN "*ERRO* " + cTxtErro
ENDIF
RETURN "OK"
Código: Selecionar todos
FOR EACH cLetra IN cXml
DO CASE
CASE cLetra $ "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
CASE cLetra $ "abcdefghijklmnopqrstuvwxyz"
CASE cLetra $ "0123456789"
CASE cLetra $ " <>=:/.,-+#"
CASE cLetra == ["]
OTHERWISE
RETURN "*ERRO* Caractere " + cLetra + " posição " + Ltrim( Str( cLetra:__EnumIndex ) ) + ;
" aproximadamente aqui " + Substr( cXml, Max( 0, cLetra:__EnumIndex - 10 ), 20 )
ENDCASE
NEXT
IF " <" $ cXml .OR. "> " $ cXml
RETURN "*ERRO* espaços em branco antes de < ou depois de >"
ENDIF
É só uma pequena ajuda.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
cleberconde
- Usuário Nível 1

- Mensagens: 12
- Registrado em: 03 Abr 2019 10:26
- Localização: caratinga
Problema na Assinatura do XML
Nossa ta ajudando demais.
Tem alguma coisa no aplicativo que ta gerando esse caracter no final do arquivo.
Quando mando gravar com MemoWrite() ou com FWrite() e gera o caracter no final no arquivo.
Eu usei a funcao TTxtFile e nao gravou o caracter .
Vou testar com as modificacoes e dou retorno
Te agradeço ao Jose e ao Marcelo pelas dicas. to chegando la.
Tem alguma coisa no aplicativo que ta gerando esse caracter no final do arquivo.
Quando mando gravar com MemoWrite() ou com FWrite() e gera o caracter no final no arquivo.
Eu usei a funcao TTxtFile e nao gravou o caracter .
Vou testar com as modificacoes e dou retorno
Te agradeço ao Jose e ao Marcelo pelas dicas. to chegando la.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Já comentei o que usar hb_memoWrit() no harbour ou memowrit() do xharbour com .T.
Talvez tenha faltado dizer isto:
Control-Z é o fim de arquivo para o DOS.
TODO arquivo em formato DOS tem isso no final.
Pra ficar compatível com Clipper, o default das gravações Harbour/XHarbour é o arquivo sendo gerado com isso.
Talvez tenha faltado dizer isto:
Control-Z é o fim de arquivo para o DOS.
TODO arquivo em formato DOS tem isso no final.
Pra ficar compatível com Clipper, o default das gravações Harbour/XHarbour é o arquivo sendo gerado com isso.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problema na Assinatura do XML
Novidades?
Resolveu o problema da assinatura?
Resolveu o problema da assinatura?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
Fernando queiroz
- Usuário Nível 4

- Mensagens: 779
- Registrado em: 13 Nov 2014 00:41
- Localização: Porto Alegre/RS
Problema na Assinatura do XML
Eu estou retirando os carácteres especiais nos cadastros , para não dar dor de cabeça na hora da NFE
Em alguns caso como D’angelo faço a troca já na entrada
Em alguns caso como D’angelo faço a troca já na entrada
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart