Jump to content

João Paulo Müller

Membros
  • Content Count

    291
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by João Paulo Müller

  1. Bom dia Lucas, Me parece que esse XML que você está enviando (envio_1742_edit_assinado) não está na estrutura correta desse novo WSDL que seria: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:nfse="http://nfse.abrasf.org.br"> <soapenv:Header/> <soapenv:Body> <nfse:GerarNfseRequest> <nfseCabecMsg>?</nfseCabecMsg> <nfseDadosMsg>?</nfseDadosMsg> </nfse:GerarNfseRequest> </soapenv:Body> </soapenv:Envelope> O Italo já fez as alterações no arquivos SimplISSv2 de acordo com a nova estrutura para o método Enviar. Não consegui testar aqui ainda devido ao erro 403. Tente fazer os testes através do método enviar.
  2. Testei com outra empresa de Blumenau e também retorna erro 403.
  3. Olá Pessoal, Continuo com o erro 403 aqui mesmo com um certificado válido de Blumenau. Com esse mesmo certificado estou conseguindo acessar os WSDL normalmente. Estou carregando o certificado da seguinte forma: Alguma sugestão?
  4. Bom dia Augusto, fiz a alteração, mas da mesma forma está retornando o erro 403. Debuguei e o certificado está sendo carregado normalmente, porém, ainda assim retorno erro 403. if UseCertificateHTTP then FWinHTTPReqResp.CertContext := FpDFeSSL.CertContextWinApi // esta caindo nessa condição e carregando o certificado else FWinHTTPReqResp.CertContext := Nil; Você está conseguindo fazer o envio?
  5. Bom dia Pessoal, Realizei algumas alterações no arquivo SimplISSv2 para corrigir os Soap Actions e os endereços, segue em anexo. Pelo navegador consigo acessar o endereço, porém, pela aplicação estou recebendo o erro 403, mesmo utilizando um certificado valido de um cliente de Blumenau. Segue em anexo também os WSDL's, conforme Italo solicitou. SimplISSv2.ini WSDLProducao.xml WSDLHomologacao.xml
  6. Italo, antes mesmo de eu começar analisar para fazer as alterações, é possível pelo componente ACBr construir o XML no padrão desse novo WS ? <?xml version="1.0" encoding="ISO-8859-1"?> <soapenv:Envelope xmlns:nfse="http://nfse.abrasf.org.br" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <nfse:RecepcionarLoteRpsRequest> <nfseCabecMsg> <![CDATA[]]> </nfseCabecMsg> <nfseDadosMsg> <![CDATA[]]> </nfseDadosMsg> </nfse:RecepcionarLoteRpsRequest> </soapenv:Body> </soapenv:Envelope> Pergunto por causa das duas Tags (nfseCabecMsg e nfseDadosMsg) que encapsula o restante do XML.
  7. Consegui os XMLs de exemplo dos métodos. Segue em anexo os XMLs zipados. Vamos realizar a implementação desse novo endereço em um novo arquivo ini ou vamos utilizar o NotaBlu ou SimplISSv2? Arquivos_Msg.zip
  8. Aqui estava com esse erro também. Acessei em uma guia anonima, onde solicitou o certificado novamente, então selecionei o certificado e funcionou normalmente. Estranho...
  9. Confirmei essa informação com o consultor da SimplISS (Pedro). Questionei se era provisório e o mesmo informou que não, porém, esse endereço solicita certificado digital na comunicação. Esse novo endereço é para estar no padrão ABRASF 2.03
  10. Olá pessoal, Estive realizando os testes de envio pelo método Gerar, porém, recebo como retorno o erro: Arquivo enviado fora da estrutura do arquivo XML de entrada- Campo(s) obrigatório(s) faltando (GerarNfseEnvio). Estou enviando o XML conforme o exemplo fornecido pelo provedor. Em contato com o suporte, sugeriram a alterações de alguns campo e realizamos os testes, mas não resolveu. Após diversos testes em relação aos campos, sendo que os mesmo foram preenchidos conforme o XML de exemplo, o consulto pediu para alterarmos o envelopamento, pois não estava igual ao exemplo deles, no caso, os namespaces. Sabem me dizer se faz sentido esse problema ser pelo envelopamento? Alguém já passou por esse problema? Estou tentando ajustar no ACBR para enviar o envelopamento igual ao exemplo, porém, esta dando erro ao carregar o XML na assinatura. Notei que estava sendo preenchido o prefixo nos elementos filhos da tag RPS exemplo: <nfse:InfDeclaracaoPrestacaoServico Id="dec1056543"> porém a Tag Rps não estava sendo incluso o prefixo nfse, ficando da seguinte forma: <Rps> <nfse:InfDeclaracaoPrestacaoServico Id="dec1056543"> .... Fiz a seguinte alteração para tentar "solucionar" esse problema, no entanto não acho que seja a forma correta, fiz apenas para testar, pode ser que já há outra solução. unit pnfsNFSeW_ABRASFv2; ... //linha 940 if (FProvedor = proSimplISSv2) then Gerador.wGrupo(Prefixo4+'Rps') else if (FProvedor in [proNotaInteligente, proPronimv2, proTiplanv2, proiiBrasilv2]) then Gerador.wGrupo('Rps') else Gerador.wGrupo('Rps' + Atributo); A mesma ideia usei para fazer o fechamento da Tag RPS, inseri uma condição verificando o provedor e adicionando o prefixo. No entanto, da mesma forma permanece o erro no carregamento do XML para assinar. Segue em anexo o XML de exemplo do provedor, o XML que estou enviando, o XML que ocorre o erro na assinatura do RPS e as alterações no SimplISSv2.ini. 105654-ger-nfse-soap.xml Exemplo.xml SimplISSv2.ini XMLAssinatura.xml
  11. É exatamente esse problema da terceira empresa que você tentou cadastrar que está acontecendo aqui. Há um defeito para recuperar a senha, o suporte abriu um chamado para solucionar. Até se puder relatar esse problema pro suporte também quem sabe eles dão uma prioridade maior por perceber que mais pessoas enfrentam esse problema. O detalhe é que eles tem problemas bem maiores para dar prioridade e esse acaba ficando pra trás. Você está utilizando o componente ACBrNFSe?
  12. Boa tarde pessoal, Vocês conseguiram realizar o cadastro em ambiente de homologação? Já estou a quase duas semanas em contato com a Simpliss e não conseguem liberar o ambiente de homologação para se quer iniciarmos a integração. Foi relatado um defeito no cadastro e pediram para aguardar a correção, isso já há uns 3 dias, estamos cobrando todo dia essa solução, mas tá dificil...
  13. Aqui agora estou recebendo as rejeições: E138 CNPJ não autorizado a realizar o serviço. Informe o CNPJ autorizado a executar o serviço. Pelo que me recordo o erro E138 estaria relacionado ao certificado com CNPJ diferente do CNPJ do prestador, porém, verifiquei essas informações e o CNPJ é o mesmo. E157 Usuário não está autorizado a utilizar esse serviço para esse contribuinte. Solicite ao contribuinte autorização para utilizar o serviço em seu nome. Com relação a este erro é necessário realizar um credenciamento para utiliar o ambiente de homologação? O cliente já esta usando em produção pelo portal. Procurei no portal mas não encontrei esse credenciamento.
  14. Bom dia, Fiz o teste pelo componente ACBrNFSe e retorna erro de assinatura. Analisando o XML a TAG enviaada é <EnviarLoteRpsEnvio> e não <GerarNFSeEnvio>, acredito ser pelo fato de ter utilizado o método ACBrNFSe.Enviar. Qual método estão utilizando/testando ? Gerar? Segue XML em anexo. 25-env-lot.xml
  15. Boa tarde, Este sistema de migração consigo consumir pelo próprio ACBr? Fiz testes alterando o provedor do cidades.ini para NotaBlu, mas recebo erro 12029 - Conexão com o Servidor Falhou.
  16. Estou tentando enviar por WS em homologação, mas retorna o erro 12029 - Conexão com o Servidor Falhou. Será que tem relação com o que o @Moacir Ezequiel Lamego comentou?
  17. Bom dia. Pessoal, utilizando o envio pelo padrão do antigo provedor (NotaBlu) está funcionando em produção?
  18. Pessoal, também estou nessa situação e estou disposto a colaborar no que foi preciso. Enviei um e-mail hoje pela manhã questionando o erro de Assinatura de Hash incorreto, que é o que está pegando aqui. Abriram um chamado, mas até o momento não obtive respostas.
  19. http://www.substituicaotributaria.com/SST/substituicao-tributaria/noticia/?id=4511 Dia 26/08/2019 foi publicado a alteração na portaria na qual estabelece que o registro 2131 deixa de ser obrigatório até Janeiro de 2020. Da mesma forma em Janeiro de 2020 vamos ter o mesmo problema. No meu ponto de vista vamos ter que disponibilizar campos para o usuário fornecer as informações relativa as notas do substituto, pois as informações que o registro exige não constam no XML da nota.
  20. Bom dia, Certo Italo, Obrigado! Referente a Lib, estou mantendo a Sec pois nos demais módulo do sistema é utilizado essa lib. Na verdade não fui muito a fundo ainda para entender a diferença entre as duas e possivelmente realizar a migração. Para utilizar a Xml2 preciso alterar apenas as Dlls da aplicação? Quais seriam as vantagens da xml2?
  21. Boa tarde Italo, obrigado pelo retorno. Segue em anexo os arquivos. ISSJoinville.ini ACBrDFeXsXmlSec.pas
  22. Voltei a analisar essa situação e consegui autorizar o cancelamento, no entanto, gostaria de trocar uma ideia para ver a forma correta de resolver essa situação, pois da forma que fiz foi apenas um teste. 1) ALTERADO ARQUIVO ISSJoinville.ini [Cancelar] IncluiEncodingCab=0 IncluiEncodingDados=0 DocElemento=Pedido InfElemento=InfPedidoCancelamento //Adicionei esta linha Texto1=<soapenv:Envelope xmlns="%NameSpace%/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> Texto2=<soapenv:Body> Texto3=%DadosMsg% Texto4=</soapenv:Body> Texto5=</soapenv:Envelope> Suspeitei que o erro strdup function failed ocorria pelo fato de não ter o <!DOCTYPE Teste> no XML, portanto inclui o InfElemento para ser adicionado o DOCTYPE, coforme o metodo de assinatura (TDFeSSLXmlSignXmlSec.Assinar) /*cDTD é a constante do DOCTYPE*/ if InfElement <> '' then begin IdAttr_temp := IfEmptyThen(IdAttr, 'Id'); DTD := StringReplace(cDTD, '&infElement&', InfElement, []); DTD := StringReplace(DTD, '&IdAttribute&', IdAttr_temp, []); AXml := InserirDTD(AXml, DTD); end; Resolveu o erro strdup function failed, porém, o WS estava retornando erro de assinatura. Analisando o XML assinado pude verificar que a TAG de assinatura estava sendo colocado no local errado, estava sendo inserida dentro da tag <CancelarNfseEnvio>, porém deveria ser dentro da TAG <Pedido> (docElement). OBS: Em anexo consta o XML com a assinatura na TAG correta e a assinatura sendo inserida na TAG incorreta. Ao depurar mais a fundo as rotinas encontrei a função XmlSecSign, onde verifica se já existe a TAG de assinatura no XML, caso contrario cria uma nova. Na função para criar o node de assinatura (AdicionarNode) é encontrado o elemento para ser inserido a assinatura através do parâmetro docElement. function TDFeSSLXmlSignLibXml2.AdicionarNode(var aDoc: xmlDocPtr; const ConteudoXML: String; docElement: String): xmlNodePtr; Var NewNode, DocNode: xmlNodePtr; memDoc: xmlDocPtr; NewNodeXml, vdocElement: String; begin {$IFNDEF COMPILER23_UP} Result := nil; {$ENDIF} NewNode := nil; memDoc := nil; try NewNodeXml := '<a>' + ConteudoXML + '</a>'; memDoc := xmlReadMemory(PAnsiChar(AnsiString(NewNodeXml)), Length(NewNodeXml), nil, nil, 0); NewNode := xmlDocCopyNode(xmlDocGetRootElement(memDoc), aDoc.doc, 1); DocNode := xmlDocGetRootElement(aDoc); { Se docElement possui prefixo o mesmo tem que ser removido } vdocElement := copy(docElement, Pos(':', docElement) + 1, Length(docElement)); if (vdocElement <> '') then DocNode := LibXmlLookUpNode(DocNode, vdocElement); if (DocNode = nil) then raise EACBrDFeException.Create(cErrElementsNotFound); Result := xmlAddChildList(DocNode, NewNode.children); finally if NewNode <> nil then begin NewNode.children := nil; NewNode.last := nil; xmlFreeNode(NewNode); end; if (memDoc <> nil) then xmlFreeDoc(memDoc); end; end; O erro esta ocorrendo pois na chamada da função AdicionarNode não é passado o docElement (Pedido), por este motivo é inserido a tag de assinatura na TAG <CancelarNfseEnvio> ao invés da tag <Pedido>. SignNode := LibXmlFindSignatureNode(aDoc, SignatureNode, SelectionNamespaces, infElement); if (SignNode = nil) then SignNode := AdicionarNode(aDoc, SignatureElement(URI, True, IdSignature, FpDFeSSL.SSLDgst)); Para fazer um teste alterei o ultimo parâmetro da função passando o DocElement (Pedido) que seria a TAG onde a assinatura deveria ser inserida. SignNode := AdicionarNode(aDoc, SignatureElement(URI, True, IdSignature, FpDFeSSL.SSLDgst),'Pedido'); Dessa forma conseguir autorizar o cancelamento, porém tenho total certeza que não é a forma certa de resolver, gostaria de uma sugestão dos entendidos no assunto, estou tentando o possível aqui. Grato! XML Com assinatura no local errado.xml XML assinatura no local certo.xml
  23. Olá pessoal, Estou realizando a integração NFS-e com o município de Joinville e ao realizar os testes foi constatado que a URL de Homologação está incorreta e o arquivo do provedor não segue o padrão dos demais. Realizei as seguintes alterações para corrigir a URL e padronizar com os demais arquivos: Alterado URL de Homologação no arquivo arquivo Cidades.ini [4209102] Nome=Joinville UF=SC Provedor=ISSJoinville NomeURL_H=nfemwshomologacao NomeURL_P=nfemws Padronizado o arquivo ISSJoinville.ini para utilizar as variáveis de URL definidas no arquivo Cidades.ini [URL_P] RecepcaoLoteRPS=https://%NomeURL_P%.joinville.sc.gov.br/NotaFiscal/Servicos.asmx?wsdl [URL_H] RecepcaoLoteRPS=https://%NomeURL_H%.joinville.sc.gov.br/NotaFiscal/Servicos.asmx?wsdl Anteriormente estava da seguinte forma [URL_P] RecepcaoLoteRPS=https://nfemws.joinville.sc.gov.br/NotaFiscal/Servicos.asmx?wsdl [URL_H] RecepcaoLoteRPS=https://nfewshomologacao.joinville.sc.gov.br/NotaFiscal/Servicos.asmx?wsdl Segue em anexo os arquivos alterados. Cidades.ini ISSJoinville.ini
  24. Olá pessoal, Alguém está entregando a declaração?
  25. No meu entendimento você deve armanenar todos os valores unitário e na hora de fazer a venda realizar a multiplicação. No caso, se o vICMS do fornecedor foi R$: 120,00 para 10 unidades você teria que armazenar o R$12,00 para usar na venda. Portanto se fazer uma venda de 5 unidades estaria informando R$:60,00 (12 * 5). Isso para os demais campos (ST Base, ST Valor, FCP ST Base, FCP ST Valor). Minha maior duvida até o momento é como preencher o campo pST. É a aliquota de ICMS do fornecedor (pICMS)? Outra questão é se deve ser pego o valor da ultima entrada ou pela Média? Estou implementando no sistema uma configuração para disponibilizar as duas opção, ai o cliente/contador informa qual deve ser utilizado.
×
×
  • Create New...