ERP – eDocs NFS-e Thema - There is an error in XML document (XX, XX) / The string '' is not a valid AllXsd value
Incidente
No eDocs em NFS-e, ao gerar o cancelamento de uma NFS-e para prefeituras que utilizem o Fornecedor Thema, o evento está na situação de Recebido ERP. Porém, ao verificar o log, é apresentada a mensagem:
There is an error in XML document (XX, XX).
at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
at System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader)
at Senior.SapiensNfe.Processos.Service.Xml.Sistema.XmlHelper.Deserializar[T](String conteudo)
at Senior.SapiensNfe.Processos.Service.Nfse.ThemaNfseBusiness.CancelarNfse(CancelamentoNfse cancelamento, ISession sessao)
at Senior.SapiensNfe.Processos.Service.Nfse.EnvioCancelamentoNfseBusiness.EnviarCancelamentos()
The string '' is not a valid AllXsd value.
Causa
Essa situação ocorre devido ao sistema da Prefeitura retornar um valor vazio em uma determinada tag do cancelamento.
Por exemplo: a tag <DataHoraCancelamento></DataHoraCancelamento> está sendo apresentada vazia.
Solução
Para resolver essa situação, realize os passos abaixo:
1. Ative o log XML. Para detalhes do processo, consulte o artigo: ERP – eDocs Log XML – Como coletar os XMLs trafegados entre eDocs e SEFAZ/Prefeituras (Logs XML);
1.1. Verifique no retorno da prefeitura qual a tag que está vazia e qual a mensagem apresentada, através da coluna Tipo Conteúdo: Retorno do envio de cancelamento, conforme demonstrado na imagem do exemplo abaixo:
Importante:
Sendo apresentada mensagem: Essa NF-e já está cancelada, siga os passos do tópico 2.
2. Acesse a tela NFS-e / Emissões / aba emissões;
2.1. Selecione a nota;
2.2. Clique no botão Consultar;
Observação:
Neste ponto a NFS-e deverá ficar cancelada tanto na aba Emissões quanto na aba Cancelamentos.
Não sendo apresentada mensagem ou caso a mensagem não indique que o cancelamento já está autorizado no sistema da prefeitura, siga os passos do tópico 3.
3. Salve o log onde foi identificada a tag com o campo vazio;
3.1. Contate a prefeitura enviando o log salvo e indicando a tag vazia, para que o suporte da prefeitura realize a correção no sistema.
Importante
Após a prefeitura indicar que houve a correção, verifique se o cancelamento foi aprovado no eDocs e caso o problema persista, a análise do log deverá ser feita novamente.