Ir para conteúdo
  • Cadastre-se

Fernando Schuch

Membros
  • Total de ítens

    12
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Fernando Schuch postou

  1. Oi Daniel. Claro. Seguem em anexo. Estava revisando as units antes de enviar aqui e também percebi que existe outra alteração que fiz. Essa foi há mais tempo, mas esqueci de enviar para cá. Na ACBrDFeXsLibXml2.LibXmlNodeWasFound estava fazendo a comparação: Um de nossos clientes recebeu um XML de CT-e que tinha a tag "infCte", sendo que o padrão seria "infCTe". E por conta do "T" minúsculo, o nó não foi encontrado. Então comecei a fazer a comparação com o AnsiSameText do Delphi. Não está relacionado ao assunto do tópico, mas como vocês iriam perceber essa mudança no Diff, achei melhor explicar o motivo. ACBrLibXml2.pas ACBrDFeXsLibXml2.pas
  2. Boa tarde! Gostaria de fazer uma contribuição referente a mensagem de erro que a LibXml2 retorna ao identificar uma tag com valor incorreto (maior que o permitido, menor que o permitido, etc.). Atualmente, a mensagem está assim: --> 1831 - Element '{http://www.portalfiscal.inf.br/nfe}xBairro': [facet 'minLength'] The value has a length of '1'; this underruns the allowed minimum length of '2'. Dependendo da tag, ela se repete várias vezes no XML e demoramos mais para identificar onde ela realmente está na estrutura. Então quis colocar o caminho completo da estrutura do XML até chegar na tag problemática, para ficar assim: --> 1831 - Element '{http://www.portalfiscal.inf.br/nfe}/NFe/infNFe/dest/enderDest/xBairro': [facet 'minLength'] The value has a length of '1'; this underruns the allowed minimum length of '2'. Procurei nos fontes e não encontrei nada que ativasse esse comportamento. Por isso criei um método que devolve o caminho completo do nodo raiz até a tag. Na ACBrLibXml2.pas, o novo método: function xmlGetNodePathNoNS(Node: xmlNodePtr): string; var s: String; begin Result := ''; while Assigned(Node) do begin // xmlNode.name é um PAnsiChar, converte para string Delphi s := Trim(string(Node^.name)); if s <> '' then Result := '/' + s + Result; Node := Node^.parent; end; end; E na ACBrDFeXsLibXml2.pas, alterei a parte que atribui a mensagem de erro ao Result na TentaPegarMensagemErroDetalhada. A ideia é substituir o "xBairrro" pelo retorno da função xmlGetNodePathNoNS. function TDFeSSLXmlSignLibXml2.TentaPegarMensagemErroDetalhada(const MsgErroAtual: string): String; var prtUltimoErroXml: xmlErrorPtr; begin Result := ''; prtUltimoErroXml := xmlGetLastError(); if prtUltimoErroXml = nil then begin Result := MsgErroAtual; Exit; end; Result := MsgErroAtual + ' --> ' + IntToStr(prtUltimoErroXml^.code); if (prtUltimoErroXml^.message <> nil) then //Result := Result + ' - ' + prtUltimoErroXml^.message; //Era assim Result := Result + ' - ' + StringReplace(prtUltimoErroXml^.message, xmlNodePtr(prtUltimoErroXml^.node)^.name, xmlGetNodePathNoNS(prtUltimoErroXml^.node), [rfIgnoreCase]); //Ficou assim end; Estou a disposição para discutir se essa seria a melhor maneira de fazer isso.
  3. Boa tarde! Hoje estava fazendo alguns testes com o Web Service de Consulta do Contribuinte. Chegando na UF do Amazonas (AM), descobri que o serviço não estava funcionando. Acessei o Portal da NF-e (https://www.nfe.fazenda.gov.br/portal/webServices.aspx?tipoConteudo=OUC/YVNWZfo=) e percebi que o portal lista uma URL que não está no ACBrNFeServicos. Estou anexando o .ini e o .res atualizados. ACBrNFeServicos.ini ACBrNFeServicos.res
  4. Aproveitando... Quem estiver com o mesmo problema, abra chamado na SEFAZ-MG. Quando mais pessoas reportarem o problema, maior a chance de resolver. Utilizei o link abaixo: http://formulario.faleconosco.fazenda.mg.gov.br/sefatendeweb/pages/faleconoscoFormulario.xhtml Assunto: APLICATIVOS E DECLARAÇÕES > SINTEGRA > CONSULTA PÚBLICA SINTEGRA / CADASTRO CCC
  5. Bom dia! Recebi retorno da SEFAZ-MG. Quase 5 meses após a abertura do chamado e adivinhem... responderam que não encontraram problemas. Fiz nova consulta hoje de um contribuinte de MG pelo Web Service https://nfe.fazenda.mg.gov.br/nfe2/services/CadConsultaCadastro4. Ainda recebo a rejeição 257 - Solicitante não habilitado para emissão da NF-e, sendo que o mesmo possui IE nessa UF. Respondi o e-mail deles, mas não tenho expectativas de que resolverão o problema.
  6. Até agora a SEFAZ de MG não respondeu o chamado que abri no dia 02/02.
  7. Bom dia! Tenho um cliente que não está conseguindo autorizar NF-e no estado de São Paulo. O erro retornado é: Erro ao obter resposta do webservice. <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <soap:Fault> <soap:Code> <soap:Value>soap:Receiver</soap:Value> </soap:Code> <soap:Reason> <soap:Text xml:lang="en">Server was unable to process request. ---&gt; Object reference not set to an instance of an object.</soap:Text> </soap:Reason> <soap:Detail/> </soap:Fault> </soap:Body> </soap:Envelope> Alguém está passando pelo mesmo problema? Ocorre apenas no ambiente de produção. Em homologação está normal.
  8. Boa tarde! Também estamos com o mesmo problema. Pelo Cadastro Centralizado de Contribuinte (https://dfe-portal.svrs.rs.gov.br/Nfe/Ccc), os dados do CNPJ retornam normalmente. Eu encontrei um site da Sefaz de MG que podem ser feitas consultas pelo CNPJ, mas não sei afirmar se consulta a mesma base de dados que o WS (https://www2.fazenda.mg.gov.br/sol/ctrl/SOL/IE/CONSULTA_1240?ACAO=VISUALIZAR). Nesse site diz que "A pesquisa não retornou nenhum registro". Abri um chamado na Sefaz MG e estou aguardando resposta deles.
  9. Obrigado! Iniciarei os testes e postarei aqui os resultados.
  10. Bom dia, Ítalo. URL de homologação: https://treinamento.atende.net/?pg=services&service=WNENotaFiscalEletronicaNfe&cidade=treina_novohamburgo URL de produção: https://ws-novohamburgo.atende.net:7443/?pg=services&service=WNENotaFiscalEletronicaNfe&cidade=padrao Coloquei em anexo o wsdl de homologação, pois para acessá-lo, é necessário um usuário e senha. Se precisar, posso te enviar por e-mail essas credenciais, pois elas também serão necessárias no envio das requisições. O WSDL de produção está indisponível, acredito que eles ainda estão desenvolvendo. Caso outros municípios venham a utilizar a v2.04 por esse provedor, só mudar o "novohamburgo" pelo nome da nova cidade... o resto da URL se manterá a mesma. wsdl_homologacao.xsd
  11. Abaixo tem outro link com mais algumas informações sobre o ambiente de homologação. Para enviar requisições, segundo o pessoal da IPM, é necessário enviar um CNPJ e Senha de acesso junto com a requisição (Authorization). Essas credenciais são disponibilizadas mediante pedido pelo e-mail [email protected]. Nós já conseguimos esse acesso, porém é necessário um CNPJ de uma empresa de Novo Hamburgo para efetuar os testes. Link: https://novohamburgo.atende.net/subportal/atualizacao-fiscal-web
  12. Boa tarde! No início dessa semana, recebemos um comunicado da prefeitura de Novo Hambugo/RS, informando que o provedor para emissão de Notas Fiscais de Serviço será trocado. Atualmente é o ISSNet e passará a ser o IPM. Será utilizado o padrão Abrasf v2.04. Ontem (07/02) a IPM disponibilizou um treinamento com algumas informações sobre essa migração, inclusive afirmando que será o primeiro município no qual eles implantarão a v2.04 do Abrasf. Pesquisando nos fontes do ACBr, não encontrei essa versão implementada para o provedor. Por isso, venho aqui questionar se os moderadores/consultores do ACBr já receberam essa demanda. Caso contrário, como devemos prosseguir para desenvolvimento dessa opção? A troca de provedor ocorrerá no ambiente de produção em 04/03/23. Segue abaixo o link que recebemos: https://notafiscal.novohamburgo.rs.gov.br/
×
×
  • 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...
The popup will be closed in 10 segundos...