Ir para conteúdo
  • Cadastre-se

dev botao

Prefeitura Sorocaba/SP tag ExigibilidadeISS provedor DSF


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 161 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa noite, estou homologando emissão para a prefeitura de Sorocaba/SP que é administrada pelo provedor DSF, ao enviar a nota fiscal para emissão estou recebendo o erro (Tipo de exigibilidade do ISSQN incorreto.)  ao analisar o manual de integração em nenhum lugar menciona sobre o envio da tag “ExigibilidadeISS”, alterei meu fonte e não estou mais alimentado o componente com informação, alterei também FNrOcorrExigibilidadeISS  de FNrOcorrExigibilidadeISS  := 1 para FNrOcorrExigibilidadeISS := 0 d a unit (ACBrNFSeXGravarXml_ABRASFv2) para ser opcional, mas continua saindo a tag no xml, como faço para que essa tag não seja mais gerada?

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

Bom dia Bruno,

Lembre-se que alterar a unit ACBrNFSeXGravarXml_ABRASFv2, essa alteração passa a valer para todos os provedor que seguem a versão 2 do layout da ABRASF.

Só podemos alterar essa unit quando temos certeza que todos os provedores seguem essa configuração.

O lugar mais indicado é alterar a unit GravarXml do referido provedor.

Exemplo:

procedure TNFSeW_DSF200.Configuracao;
begin
  inherited Configuracao;

  FormatoAliq := tcDe2;
  GerarNSRps := False;
  NrOcorrExigibilidadeISS := -1;
end;

Lembrando que:

  // Numero de Ocorrencias Minimas de uma tag
  // se for  0 só gera a tag se o conteudo for diferente de vazio ou zero
  // se for  1 sempre vai gerar a tag
  // se for -1 nunca gera a tag

Outra coisa:

Segundo os Schemas que temos para esse provedor a tag é obrigatória, veja:

			<xsd:element name="ExigibilidadeISS" type="tsExigibilidadeISS"
				minOccurs="1" maxOccurs="1" />

Quando o mínimo de ocorrências é 1 significa que é obrigatória.

Os valores aceitos são:

	<xsd:simpleType name="tsExigibilidadeISS">
		<xsd:annotation>
			<xsd:documentation>Exigibilidade do ISS da NFS-e (
						1 - Exigivel; 
						2 - Nao incidencia; 
						3 - Isencao; 
						4 - Exportacao; 
						5 - Imunidade; 
						6 - Exigibilidade Suspensa por Decisao Judicial; 
						7 - Exigibilidade Suspensa por Processo Administrativo)
                        </xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:byte">
			<xsd:pattern value="1|2|3|4|5|6|7" />
		</xsd:restriction>
	</xsd:simpleType>

Note que o erro que você esta tendo é de que o valor informado esta incorreto e não que a tag não deve constar no XML.

O componente usa os seguintes valores:

function TACBrNFSeXProvider.ExigibilidadeISSToStr(
  const t: TnfseExigibilidadeISS): string;
begin
  Result := EnumeradoToStr(t,
                           ['1', '2', '3', '4', '5', '6', '7', '8'],
                           [exiExigivel, exiNaoIncidencia, exiIsencao, exiExportacao,
                            exiImunidade, exiSuspensaDecisaoJudicial,
                            exiSuspensaProcessoAdministrativo, exiISSFixo]);
end;

Note que existe o valor 8 = ISS Fixo que não é utilizado pelo provedor em questão.

Consultor SAC ACBr

Italo Giurizzato 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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Em 04/01/2024 at 09:59, Italo Giurizzato Junior disse:

Bom dia Bruno,

Lembre-se que alterar a unit ACBrNFSeXGravarXml_ABRASFv2, essa alteração passa a valer para todos os provedor que seguem a versão 2 do layout da ABRASF.

Só podemos alterar essa unit quando temos certeza que todos os provedores seguem essa configuração.

O lugar mais indicado é alterar a unit GravarXml do referido provedor.

Exemplo:

procedure TNFSeW_DSF200.Configuracao;
begin
  inherited Configuracao;

  FormatoAliq := tcDe2;
  GerarNSRps := False;
  NrOcorrExigibilidadeISS := -1;
end;

Lembrando que:

  // Numero de Ocorrencias Minimas de uma tag
  // se for  0 só gera a tag se o conteudo for diferente de vazio ou zero
  // se for  1 sempre vai gerar a tag
  // se for -1 nunca gera a tag

Outra coisa:

Segundo os Schemas que temos para esse provedor a tag é obrigatória, veja:

			<xsd:element name="ExigibilidadeISS" type="tsExigibilidadeISS"
				minOccurs="1" maxOccurs="1" />

Quando o mínimo de ocorrências é 1 significa que é obrigatória.

Os valores aceitos são:

	<xsd:simpleType name="tsExigibilidadeISS">
		<xsd:annotation>
			<xsd:documentation>Exigibilidade do ISS da NFS-e (
						1 - Exigivel; 
						2 - Nao incidencia; 
						3 - Isencao; 
						4 - Exportacao; 
						5 - Imunidade; 
						6 - Exigibilidade Suspensa por Decisao Judicial; 
						7 - Exigibilidade Suspensa por Processo Administrativo)
                        </xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:byte">
			<xsd:pattern value="1|2|3|4|5|6|7" />
		</xsd:restriction>
	</xsd:simpleType>

Note que o erro que você esta tendo é de que o valor informado esta incorreto e não que a tag não deve constar no XML.

O componente usa os seguintes valores:

function TACBrNFSeXProvider.ExigibilidadeISSToStr(
  const t: TnfseExigibilidadeISS): string;
begin
  Result := EnumeradoToStr(t,
                           ['1', '2', '3', '4', '5', '6', '7', '8'],
                           [exiExigivel, exiNaoIncidencia, exiIsencao, exiExportacao,
                            exiImunidade, exiSuspensaDecisaoJudicial,
                            exiSuspensaProcessoAdministrativo, exiISSFixo]);
end;

Note que existe o valor 8 = ISS Fixo que não é utilizado pelo provedor em questão.

Bom dia Ítalo, sim tenho ciência de todas essas observações, estávamos tendo essa situação e o cliente insistia em dizer que o erro era por causa do envio da tag no xml e estava exigindo que gerássemos um xml sem a tag, apenas para não mais se indispor com o cliente ia fazer alterar o fontes momentaneamente para não enviar mais a tag, e assim o cliente aceitar que o erro era de cadastro e não do sistema, mas consegui contornar a situação de outra forma e provar que o erro era realmente de cadastro, obrigado pela atenção Ítalo.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Italo Giurizzato 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

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 161 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.

The popup will be closed in 10 segundos...