Ir para conteúdo
  • Cadastre-se

dev botao
  • Este tópico foi criado há 1837 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado (editado)

Italo, bom dia,

Segue os schemas em anexo.

Em relação a assinatura consegue me auxiliar neste questionamento:

--

Quanto a assinatura, sabe me dizer se devemos assinar o RPS, ou o Lote ou Ambos?

 
Quando o senhor fala de "rps, lote ou ambos" está desenvolvendo mais de um modelo de arquivo para emitir as notas?

 

schema_xml_nfs-e_v2.03.zip

Editado por Paulo Alexandre Hostert
  • Consultores
Postado

Bom dia Paulo,

Com o Schema corrigido pelo nosso amigo BigWings consegui validar o XML gerado.

Mas a estrutura do XML que o webservice espera não é exatamente a que consta no Schema.

Vamos a um exemplo:

No Schema temos:

	<xsd:complexType name="tcLoteRps">
		<xsd:sequence>
			<xsd:element name="NumeroLote" type="tsNumeroLote"
				minOccurs="1" maxOccurs="1" />
			<xsd:element name="CpfCnpj" type="tcCpfCnpj" minOccurs="1"
				maxOccurs="1" />
			<xsd:element name="InscricaoMunicipal" type="tsInscricaoMunicipal"
				minOccurs="0" maxOccurs="1" />
          (...)
		</xsd:sequence>
		<xsd:attribute name="Id" type="tsIdTag" />
		<xsd:attribute name="versao" type="tsVersao" use="required" />
	</xsd:complexType>

Só que o webservice espera pela tag  <Cnpj> e não pelo grupo <CpfCnpj> conforme consta no schema.

Imagem do Erro ao enviar o Lote.

image.png

Ou esse provedor faça as devidas correções no webservice para que o mesmo fique em conformidade com o Schema, ou eles forneçam um Schema que condiz com o que o webservice espera receber.

Esse tipo de situação, para mim é uma tremenda falta de respeito para com os contribuintes da cidade e muito amadorismo.

A minha sugestão é pedir para os seus clientes protocolarem na prefeitura uma reclamação, informando que com o Schema fornecido por eles, além de ter sido corrigido para poder usar não bate com o que o webservice espera.

A finalidade do Schema é poder validar o XML antes do seu envio com o objetivo de evitar o envio de um XML que contenha erros de estrutura.

 

 

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Paulo,

Já esta no repositório, os arquivos Cidades.ini e SimplISSv2.ini, bem como a pasta SimplISSv2 que contem os schemas.

Enviei também algumas alterações nos fontes visando o componente.

Infelizmente o provedor fornece um Schema que não condiz com o que foi implementado no Webservice, dai o erro.

Repito, uma tremenda falta de respeito e muito amadorismo.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Bom dia Paulo,

Vou fazer as alterações no componente visando gerar o XML segundo o exemplo, mas neste caso como o Schema fornecido não bate com o exemplo, não será possível realizar a validação antes do envio.

A minha sugestão é que você e outros desenvolvedores peçam aos seus clientes a ir na prefeitura e protocolar uma reclamação referente a esse provedor, motivo: falta de documentação e o pouco que foi fornecido é divergente, ou seja, os Schemas usados para validar o XML antes do seu envio não bate com o XML de exemplo fornecido.

Até que me prove o contrario, vejo essa empresa como amadora, que implementou um webservice nas "coxas", ou seja, não se baseou no layout estabelecido nos Schemas.

  • Curtir 3
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Bom dia Paulo,

Essa empresa que Blumenau contratou merece fechar as portas de tanta incompetência.

Se você gerar o XML do RPS segundo o Schema com certeza será rejeitado pelo webservice pelo simples fato de que nele o layout é diferente.

Se você gerar o XML do RPS segundo o exemplo que eles forneceram, com certeza também será rejeitado pelo mesmo motivo.

Se gerar o XML conforme consta o webservice espera encontrar, o que ocorre:

1. Se enviar através do método Gerar ocorre o erro http 500.

2. Se enviar através do método Enviar, o envio ocorre, mas retorna o erro que diz que o hash da assinatura não confere.

Se enviar sem assinar nada ocorre o mesmo erro, se assinar somente o RPS ou somente o Lote ou ambos o mesmo erro.

Realmente esta complicado.

  • Curtir 1
  • Triste 7
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Bom dia Paulo,

Acabei de acessar o webservice e veja como esta a definição da tag LoteRps:

<xs:sequence>
  <xs:element name="LoteRps" type="tns:tcLoteRps" maxOccurs="1" minOccurs="0"/>
  <xs:element maxOccurs="1" minOccurs="0" xmlns:q1="http://www.w3.org/2000/09/xmldsig#" ref="q1:Signature"/>
</xs:sequence>
<xs:complexType name="tcLoteRps">
  <xs:sequence>
    <xs:element name="NumeroLote" type="xs:nonNegativeInteger" maxOccurs="1" minOccurs="0"/>
    <xs:element name="CpfCnpj" type="tns:tcCpfCnpj" maxOccurs="1" minOccurs="0"/>
    <xs:element name="InscricaoMunicipal" type="xs:string" maxOccurs="1" minOccurs="0"/>
    <xs:element name="QuantidadeRps" type="xs:int" maxOccurs="1" minOccurs="1"/>
    <xs:element name="ListaRps" type="tns:ArrayOfTcDeclaracaoPrestacaoServico" maxOccurs="1" minOccurs="0"/>
  </xs:sequence>
  <xs:attribute name="Id" type="xs:string"/>
  <xs:attribute name="versao" type="xs:token"/>
</xs:complexType>

Como você pode ver existe sim na definição os atributos "Id" e "versão"

Essa definição esta presente tanto no ambiente de homologação quanto o de produção:

http://wsblumenau.simplissweb.com.br/nfseservice.svc?singleWsdl

http://wshomologacaoabrasf.simplissweb.com.br/nfseservice.svc?singleWsdl

  • Confuso 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Boa tarde Paulo,

Esses caras são uma piada.

Esse schema de novo não tem nada, simplesmente ele foi corrigido pois tinha uma linha que estava faltando "<".

A pergunta que não quer calar:

O webservice vai seguir esse schema?

Não adianta nada eles fornecerem um schema segundo a versão 2.03 da ABRASF e implementarem de forma diferente no webservice.

  • Triste 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Membros Pro
Postado

Italo,

Recebi esta mensagem de outro usuário 

"Consegui corrigir o erro de assinatura.

Mas ocorre erro E900.

De acordo com o schema o lote não deve ser assinado.

Vou tentar pedir pro suporte informar qual o erro que tem no arquivo, já que está na estrutura do xsd."

 



Ler Mensagem

Falei com o suporte e confirmaram que o lote deve ser assinado também.

  • Este tópico foi criado há 1837 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.