Ir para conteúdo
  • Cadastre-se

Recommended Posts

Postado (editado)

Cidade de Piratuba - SC, provedor Betha
Ao emitir uma NFS-e com o cObra preenchido, obtivemos o seguinte retorno na emissão:

cvc-complex-type.2.4.d: Conteúdo inválido encontrado ao iniciar com o elemento 'dps:end'. Nenhum elemento filho é esperado neste ponto.


Olhando a geração da dps, notei que o grupo de endereço estava sendo gerado todo em branco, causando o erro acima.

<dps:obra>
<dps:cObra>0000000000000</dps:cObra>
<dps:end>
<dps:CEP/>
<dps:xLgr/>
<dps:nro/>
<dps:xBairro/>
</dps:end>
</dps:obra>


Fiz a alteração do código dentro do arquivo Betha.GravarXml
Antes alteração:

function TNFSeW_BethaAPIPropria.GerarXMLObra: TACBrXmlNode;
begin
  Result := CreateElement('obra');

  Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 0,
                                        NFSe.ConstrucaoCivil.inscImobFisc, ''));

  if NFSe.ConstrucaoCivil.CodigoObra <> '' then
    Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1,
                                           NFSe.ConstrucaoCivil.CodigoObra, ''))

  else if NFSe.ConstrucaoCivil.Cib > 0 then
    Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1,
                                      Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8)));

  Result.AppendChild(GerarXMLEnderecoObra);
end;


Depois alteração:

function TNFSeW_BethaAPIPropria.GerarXMLObra: TACBrXmlNode;
begin
  Result := CreateElement('obra');

  Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 0,
                                        NFSe.ConstrucaoCivil.inscImobFisc, ''));

  if NFSe.ConstrucaoCivil.CodigoObra <> '' then
    Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1,
                                           NFSe.ConstrucaoCivil.CodigoObra, ''))

  else if NFSe.ConstrucaoCivil.Cib > 0 then
    Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1,
                                      Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8)))
  else
    Result.AppendChild(GerarXMLEnderecoObra);
end;


Apenas coloquei a geração do endereço no else seguindo cCIB, inclusive se olhar o arquivo de geração do ambiente nacional também está englobado no else.

Após a correção a nota foi emitida com sucesso. Se puderem avaliar e se estiver correto

 

Editado por Lindomar S. Menezes
  • Curtir 2

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.

The popup will be closed in 10 segundos...