Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • 2 semanas depois ...
Postado (editado)
Em 12/06/2023 at 14:03, Italo Giurizzato Junior disse:

Boa tarde Edmilson,

Você sabe me dizer qual é o provedor contratado pela prefeitura, bem como as URLs de homologação e produção?

Italo bom dia!

O provedor é Fisco, eu incluir a cidade na lista e estou transmitindo, mas estou recebendo o erro: 

image.thumb.png.e6a26567da52e54c0913862baee586c3.png

mas os dados estão corretos (teóricamentre) 

image.png.4f2662e07a4612dcc3798520795825eb.png

 

 

 

temp1.xml

Editado por Edmilson Vieira Gomes
  • Consultores
Postado

Boa tarde Edmilson,

Você informou a Inscrição municipal desta forma:

<InscricaoMunicipal>246200160</InscricaoMunicipal>

Experimente informar com os zeros a esquerda conforme consta na imagem que você anexou.

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

Postado
2 horas atrás, Italo Giurizzato Junior disse:

Boa tarde Edmilson,

Você informou a Inscrição municipal desta forma:

<InscricaoMunicipal>246200160</InscricaoMunicipal>

Experimente informar com os zeros a esquerda conforme consta na imagem que você anexou.

Italo boa tarde!

já informei das seguintes formas :

246200160

00000246200160

000000246200160

000002462001-60

  • Consultores
Postado

Boa noite,

Tente também com a formatação que consta no print, com e sem os zeros à esquerda.

2.462/001-60

000.002.462/001-60

Talvez seja questão de confirmar se o cadastro está correto no provedor (alguma validação errada que o WS possa estar fazendo) e confirmar se o serviço está habilitado para este CNPJ e IM.

 

Postado
Em 18/06/2023 at 21:55, Renato Rubinho disse:

Boa noite,

Tente também com a formatação que consta no print, com e sem os zeros à esquerda.

2.462/001-60

000.002.462/001-60

Talvez seja questão de confirmar se o cadastro está correto no provedor (alguma validação errada que o WS possa estar fazendo) e confirmar se o serviço está habilitado para este CNPJ e IM.

 

O Pessoal da Fisco pediu para mandar o CNPJ conforme a formatação, sabe como eu mudo para o XML ser gerado com o CNPJ formatado?

  • Consultores
Postado

Estranho, não foi a IM não?

Este provedor utiliza o padrão ABRASF 2 e, de acordo com os schemas, o CNPJ suporta apenas 14 dígitos.

<xsd:complexType name="tcIdentificacaoPrestador">
<xsd:sequence>
<xsd:element name="CpfCnpj" type="tcCpfCnpj" minOccurs="0" maxOccurs="1"/>
<xsd:element name="InscricaoMunicipal" type="tsInscricaoMunicipal" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
xsd:complexType name="tcCpfCnpj">
<xsd:choice>
<xsd:element name="Cpf" type="tsCpf" minOccurs="1" maxOccurs="1"/>
<xsd:element name="Cnpj" type="tsCnpj" minOccurs="1" maxOccurs="1"/>
</xsd:choice>
</xsd:complexType>
<xsd:simpleType name="tsCnpj">
<xsd:restriction base="xsd:string">
<xsd:length value="14" fixed="true"/>
<xsd:whiteSpace value="collapse"/>
</xsd:restriction>
</xsd:simpleType>

 

Mas como vemos diversos absurdos dos provedores, caso queira testar, altere o fonte a seguir, removendo o GerarCPFCNPJ, reinstale os componentes e veja o resultado.

../trunk2/Fontes/ACBrDFe/ACBrNFSeX/Base/Provedores/ACBrNFSeXGravarXml_ABRASFv2.pas

function TNFSeW_ABRASFv2.GerarPrestador: TACBrXmlNode;
begin
  Result := CreateElement('Prestador');
     Result.AppendChild({GerarCPFCNPJ(}NFSe.Prestador.IdentificacaoPrestador.CpfCnpj{)});

 

Por se tratar do "core" dos provedores ABRASF 2, se funcionar precisaremos fazer com uma abordagem diferente.

  • Consultores
Postado
7 horas atrás, Edmilson Vieira Gomes disse:

Consegui fazer a emissão, tive de alterar o schema para a inscrição aceitar 18 posições e mandar exatamente da forma que está cadastro.

Confirmando, você fez as alterações que mencionei acima também?

7 horas atrás, Edmilson Vieira Gomes disse:

Mas ao consutar o lote está dando o erro :

Atualize os fontes e reinstale os componentes, pois houve uma alteração estes dias que gerou alguns erros de leitura de datas e já foi corrigido.

Caso o problema persista após reinstalare, tente debugar a leitura da data, pois aparentemente ela está correta.

../trunk2/Fontes/ACBrDFe/ACBrNFSeX/Base/Provedores/ACBrNFSeXLerXml_ABRASFv2.pas

function TNFSeR_ABRASFv2.LerDataEmissao(const ANode: TACBrXmlNode): TDateTime;
begin
  Result := ObterConteudo(ANode.Childrens.FindAnyNs('DataEmissao'), tcDatHor);
end;

 

Postado
Em 23/06/2023 at 21:29, Renato Rubinho disse:

Confirmando, você fez as alterações que mencionei acima também?

Atualize os fontes e reinstale os componentes, pois houve uma alteração estes dias que gerou alguns erros de leitura de datas e já foi corrigido.

Caso o problema persista após reinstalare, tente debugar a leitura da data, pois aparentemente ela está correta.

../trunk2/Fontes/ACBrDFe/ACBrNFSeX/Base/Provedores/ACBrNFSeXLerXml_ABRASFv2.pas

function TNFSeR_ABRASFv2.LerDataEmissao(const ANode: TACBrXmlNode): TDateTime;
begin
  Result := ObterConteudo(ANode.Childrens.FindAnyNs('DataEmissao'), tcDatHor);
end;

 

Fiz apenas a alteração de tamanho de campo no schema, para poder mandar a inscrição formatada e com as 18 posiçõe. Peguei um XML deles e vi que somente a inscrição estava formatada ("então se percebe que nem o suporte deles sabe como funciona"). Vou atualizar os fontes para validar a data, e volto a comentar.

Postado
Em 23/06/2023 at 21:29, Renato Rubinho disse:

Confirmando, você fez as alterações que mencionei acima também?

Atualize os fontes e reinstale os componentes, pois houve uma alteração estes dias que gerou alguns erros de leitura de datas e já foi corrigido.

Caso o problema persista após reinstalare, tente debugar a leitura da data, pois aparentemente ela está correta.

../trunk2/Fontes/ACBrDFe/ACBrNFSeX/Base/Provedores/ACBrNFSeXLerXml_ABRASFv2.pas

function TNFSeR_ABRASFv2.LerDataEmissao(const ANode: TACBrXmlNode): TDateTime;
begin
  Result := ObterConteudo(ANode.Childrens.FindAnyNs('DataEmissao'), tcDatHor);
end;

 

A data vem no formato DD/MM/YYYY HH:MM:SS sendo que a hora minuto e segundo são zeros, fiz a seguinte alteração

De      

DataAut := ObterConteudoTag(Node.Childrens.FindAnyNs('DataEmissao'), tcDatHor);

Para :

    try
      DataAut := ObterConteudoTag(Node.Childrens.FindAnyNs('DataEmissao'), tcDatHor);
    Except
      try
        DataAut  := ObterConteudoTag(Node.Childrens.FindAnyNs('DataEmissao'), tcDatVcto);
      Except
        DataAut := Now();
      end;
    end;

também alterei o schema mudando o tamanho da inscrição municipal de 15 para 18 e inclui no ACBrNFSeXServicos.ini a cidade de Bom Jesus-PI.

todos os arquivos em anexo.

Muito Obrigado pela ajuda, pois se fosse pelo suporte da Fisco não seria possível 

ACBrNFSeXServicos.ini ACBrNFSeXLerXml_ABRASFv2.dcu ACBrNFSeXLerXml_ABRASFv2.pas ACBrNFSeXProviderABRASFv2.dcu ACBrNFSeXProviderABRASFv2.pas nfse.xsd

  • Curtir 1
  • Consultores
Postado

Boa tarde Edmilson,

Você pode disponibilizar o soap do retorno para análise de uma melhor abordagem para este caso?

Para isso, marque a propriedade a seguir e efetue um novo envio.

Configuracoes.WebServices.Salvar := True;

Caso entenda que possui dados sensíveis, pode enviar para [email protected] indicando o link deste tópico?

Explicando, por sua alteração ter sido feita em uma unit "base" irá afetar a todos os provedores que utilizam essa versão e forçar a data atual não seria o correto, mesmo nas exceções. 

obs: a data com hora zero tem que funcionar, pois a meia noite esse seria o valor, por isso precisamos avaliar o motivo da exceção.

Em 21/06/2023 at 16:54, Edmilson Vieira Gomes disse:

Pessoal da Fisco pediu para mandar o CNPJ conforme a formatação, sabe como eu mudo para o XML ser gerado com o CNPJ formatado?

Confirmando, você havia dito que a alteração sugerida pelo provedor seria o CNPJ formatado.

Bastou apenas mandar a IM formatada sem mexer no CNPJ?

Postado
9 minutos atrás, Renato Rubinho disse:

Boa tarde Edmilson,

Você pode disponibilizar o soap do retorno para análise de uma melhor abordagem para este caso?

Para isso, marque a propriedade a seguir e efetue um novo envio.

Configuracoes.WebServices.Salvar := True;

Caso entenda que possui dados sensíveis, pode enviar para [email protected] indicando o link deste tópico?

Explicando, por sua alteração ter sido feita em uma unit "base" irá afetar a todos os provedores que utilizam essa versão e forçar a data atual não seria o correto, mesmo nas exceções. 

obs: a data com hora zero tem que funcionar, pois a meia noite esse seria o valor, por isso precisamos avaliar o motivo da exceção.

Confirmando, você havia dito que a alteração sugerida pelo provedor seria o CNPJ formatado.

Bastou apenas mandar a IM formatada sem mexer no CNPJ?

Apenas mudei a IM o cnpj não foi preciso.

222-nfse.xml

  • Consultores
Postado

Boa tarde Edmilson,

Qual é o formato das datas dos XMLs retornados, seja o XML da nota ou não.

Pois podemos tratar isso nas units do provedor, evitando assim um efeito colateral com os demais provedores.

Me desculpa mas da forma que você fez passa a impressão da tentativa e erro, ou seja, o componente tenta ler a data em um formato se ocorrer erro tenta com outro formato.

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

Postado
Em 03/07/2023 at 15:29, Italo Giurizzato Junior disse:

Boa tarde Edmilson,

Qual é o formato das datas dos XMLs retornados, seja o XML da nota ou não.

Pois podemos tratar isso nas units do provedor, evitando assim um efeito colateral com os demais provedores.

Me desculpa mas da forma que você fez passa a impressão da tentativa e erro, ou seja, o componente tenta ler a data em um formato se ocorrer erro tenta com outro formato.

Bom dia!

O formato vem "DD/MM/YYYY HH:MM:SS".

 

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

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.