Ir para conteúdo
  • Cadastre-se

Alexandre Trajano

Membros
  • Total de ítens

    26
  • Registro em

  • Última visita

Tudo que Alexandre Trajano postou

  1. Ítalo e Luan, Consegui descobri o motivo! Não estava preenchendo o ReqResp.URL'https://bhisshomologa.pbh.gov.br/bhiss-ws/nfse' responsável para BH! Eu comentei e assim ficou! Ptuz!!! Falta de atenção a minha! a URL 'http://ws.bhiss.pbh.gov.br/CancelarNfse' estava correta. A questão é se você não informa qual o servidor responsável pelo serviço, não há como executar o serviço solicitado, no caso a URL 'http://ws.bhiss.pbh.gov.br/CancelarNfse'. Fica meu agradecimento pela atenção de vocês!
  2. -ped-can.xml-ped-can-c.xml Luan, obrigado pela ajuda, eu fiz esta alteração, mas mesmo assim o provedor me retorna que a URL é um parâmetro inválido. Segue o XML de pedido de cancelamento em anexo.
  3. Bom dia Ítalo, tudo bem? Este problema só ocorre no provedor BHISS. Já entrei em contado com eles e os mesmos me deram uma resposta vazia. Segue abaixo o conteúdo do email enviado para eles: P – Desenvolvemos um sistema de emissão par NFSe. A emissão está ok, mas quando vamos cancelar uma nota, o provedor nos retorna a seguinte mensagem: Parâmetro incorreto. - URL: - SOAPAction:http://ws.bhiss.pbh.gov.br/CancelarNfse Existe uma outra URL para realizar os cancelamentos? R – Prezado (a), Infelizmente não temos como auxiliar nesse tipo de erro, pois refere-se a tecnologia utilizada em seu ambiente. Verifique a documentação da NFS-e disponível no Portal: www.pbh.gov.br/bhissdigital Menu à esquerda: <NFS-e> <Documentação> Coloco-me à disposição para demais esclarecimentos. Esse tipo de erro nos leva a crê que a URL é inválida, mas o suporte de BH não diz nem que "sim" e nem que "não" sobre esta URL! Mas uma vez agradeço a sua atenção e ajuda! Obrigado!
  4. Prezados, Ao cancelar uma NFSe para o provedor BHISS, o mesmo me retorna " Parâmetro incorreto. - URL: - SOAPAction:http://ws.bhiss.pbh.gov.br/CancelarNfse". Com outros municípios o cancelamento está OK, somente para BH que ocorre isso. No manual informa que a URL é http://ws.bhiss.pbh.gov.br/CancelarNfse. Alguém poderia me ajudar com esta situação. Segue em anexo o xml do pedido de cancelamento. -ped-can.xml -ped-can-c.xml
  5. Ítalo, Consegui resolver a questão da assinatura! O problema estava no Schema nfse.xsd Versão 1.0. No manual da prefeitura do Rio de Janeiro informa que não é obrigatório assina o RPS ou Lote, porém no Schema diz que sim. O provedor só aceita a assinatura no Lote. Então fiz o seguinte: <xsd:complexType name="tcRps"> <xsd:sequence> <xsd:element name="InfRps" type="tcInfRps" minOccurs="1" maxOccurs="1"/> <xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="0" /> </xsd:sequence> </xsd:complexType> Na Unit ACBRProvedorRJ uma outra alteração: function TProvedorRJ.GetConfigCidade(ACodCidade, AAmbiente: Integer): TConfigCidade; var ConfigCidade: TConfigCidade; begin ConfigCidade.VersaoSoap := '1.1'; ConfigCidade.Prefixo2 := ''; ConfigCidade.Prefixo3 := ''; ConfigCidade.Prefixo4 := ''; ConfigCidade.Identificador := 'Id'; // if AAmbiente = 1 // then ConfigCidade.NameSpaceEnvelope := 'http://notacarioca.rio.gov.br' // else ConfigCidade.NameSpaceEnvelope := 'http://homologacao.notacarioca.rio.gov.br'; ConfigCidade.NameSpaceEnvelope := 'http://notacarioca.rio.gov.br'; ConfigCidade.AssinaRPS := False; ConfigCidade.AssinaLote := True; // Alterado por Italo em 10/05/2013 Result := ConfigCidade; end; e a ultima alteração foi na unit ACBrNFSeUtil, função AssinarMSXML: if ALote then begin if (URI <> '') and ((AProvedor <> proRecife) and (AProvedor <> proRJ)) then xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature[@' + Identificador + '=AssLote_' + URI + ']') else begin xmldsig.signature := xmldoc.selectSingleNode('.//ds1:' + EnviarLoteRps + '/ds:Signature'); end; end else xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature'); Feito isso, a emissão e o retorno ocorreu sucesso! Funcionou 100%!! A prefeitura do Rio ainda trabalha com a versão 1.0 da NFSe mas este arquivo nfse.xsd deve ser atualizado e lembrando que a assinatura é somente no Lote! Fica aqui me agradecimento pela sua ajuda! Valeu pela força!!!
  6. Flávio, Haveria como você exemplificar esta parte!! Obrigado!
  7. Sim estou! Uma coisa que me chamou a atenção foi que na propriedade do certificado, na aba detalhes, no campo requerente não há a informação do tipo do certificado, se é do tipo A1 ou A3, o contado afirma que do tipo A1. Até então, os lotes são enviados em arquivos txt no site da nota carioca utilizando este certificado. Será que o certificado deve ser habilitado na prefeitura para o envio de lote em XML? Desde já agradeço a sua ajuda!
  8. Alexandre, tudo bem! Peço a sua ajuda, pois estou enfrentando o mesmo problema que você passou, estou emperrado no erro de validação da assinatura, já peguei os fontes atualizados, schemas atualizados e estou utilizando um certificado que é utilizado para acessar o sistema da nota carioca! Se você poder me dá uma luz neste questão ficarei muito agradecido . Desde já agradeço a sua ajuda.
  9. Ítalo, boa tarde! Segui as suas recomendações e baixei os fontes atualizados. Com os fontes atualizados, o arquivo env-lot.xml está com a mesma estrutura do arquivo da prefeitura do Rio de Janeiro enviada como exemplo(segue em anexo), porém o retorno é o mesmo, exibe a mensagem que diz que é uma assinatura inválida! Realmente já não sei o que fazer, estou desesperado pois o arquivo é gerado certinho comparando com o arquivo de exemplo da Prefeitura. O certificado que estou usando é o mesmo que utilizo para acessar a site da nota carioca e acessar o sistema! Não seria de repente na hora de gera criptografar a assinatura possa está com algum problema? Uma outra coisa! Na alteração que você fez na unit ACBrNFSeUtil, função AssinarMSXML, você incluiu o proRJ na lista de provedor, mas ao gerar a assinatura para o lote é verificado se provedor é diferente de ProRecife, e como proRJ é diferente ele cai nesta linha xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature[@' + Identificador + '=AssLote_' + URI + ']'), só que para o ProRJ não há identificador AssLote_. Da forma que está ele me retorna mldsig.signature = nil e exibe a mensagem " É preciso carregar o template antes de assinar." Então fiz a seguinte alteração: if ALote then begin if (URI <> '') and ((AProvedor <> proRecife) and (AProvedor <> proRJ)) then xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature[@' + Identificador + '=AssLote_' + URI + ']') else begin xmldsig.signature := xmldoc.selectSingleNode('.//ds1:' + EnviarLoteRps + '/ds:Signature'); end; end else xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature'); Desta forma a mldsig.signature não retorna nill. OBS: Estou querendo fazer alguns tutoriais para as pessoas que estão começando a lidar com a geração de NFSe. Se não houver problemas como posso para contribuir com o Projeto ACBR!! Ítalo, desculpe mais uma vez, mas realmente não estou encontrando solução, estou debugando todo o código para poder encontrar o motivo do provedor invalidar a assinatura! Se poder me ajudar novamente fico eternamente agradecido!! Att. 1-env-lot.xml EnviarLoteRpsEnvio_Prefeitura.xml
  10. Ítalo, boa tarde! Consegui na prefeitura do Rio de Janeiro os exemplos dos XML´s para NFSe carioca. No arquivo EnviarLoteRpsEnvio.XML, realmente há várias diferenças na assinatura, hoje o componente gera a assinatura somente para o RPS, no exemplo da prefeitura, o lote também deve ser assinado. Segue em anexo, todos os exemplos para a alteração do componente! Obrigado! exemplos (1).zip
  11. Ítalo, boa tarde! Consegui um xml que já foi enviado sem problemas. Fiz uma comparação e percebi algumas diferenças na assinatura. Segue em anexo o XML com problemas e o sem problemas. Obrigado mais uma vez Ítalo! Comproblemas.xml SemProblemas.xml Comproblemas.xml SemProblemas.xml
  12. Ítalo, bom dia!! Baixei o fonte em questão e descomentei e foi tudo OK! Acho que a única coisa que falta é a o retorno do provedor, a rotina envia o lote e acusa o recebimento, mas logo depois me retorna com erro de Lote inválido(Verifique a assinatura dos RPS). Porém o certificado que estamos utilizando é de uma empresa (nosso cliente inclusive ) que está cadastrada na lista de prestadores cujo o mesmo CNPJ consta na lista, e o certificado foi validado no SEFAZ. A empresa utiliza o mesmo certificado para entrar no site para a nota carioca. Estamos enviando o lote para o ambiente de homologação. Você já viu este caso com outra pessoa? Obrigado pela ajuda novamente!!
  13. Entendi, realmente achei estranho, mas acabei comentando até não dá mas o erro, creio que o problema esteja aí,. Haveria como você me passar pnfsConversao para poder atualizar os fontes!! Obrigado!
  14. Italo, Depois da atualização a rotina me exibe a seguinte mensagem!
  15. Ìtalo, boa tarde!! Fiz as atualizações, mas tem um coisa que não mencionei antes, quando você me pediu para atualizar os fontes a 1ª vez, quando fui compiliar, algumas variaves não foram reconhecidas! Segue a relação da unit com os as funções estão com variaves que não forma identificadas. As variaveis destacadas em vermelho ou foram comentadas e outras substituidas. Depois destas alterações a rotina funciona. Não sei se por conta disso está a rotina me retorna informando que o CNPJ não está autorizado. De qualquer forma agradeço novamente a sua ajuda!! Unit: ACBRPROCVEDOR4R Função: GetAssinarXML acRecSincrono Função:Gera_TagI acRecSincrono Função:Gera_TagF acRecSincrono Função:GetSoapAction acRecSincrono Função:GetRetornoWS acRecSincrono Unit: ACBRNFSEWEBSERVICE function GetLastErrorText: pro4R procedure TWebServicesBase.LoadMsgEntrada pro4R proGovDigital procedure TWebServicesBase.DoNFSeEnviarLoteRPS; pro4R procedure TWebServicesBase.DoNFSeGerarNFSe; pro4R procedure TWebServicesBase.DoNFSeGerarLote; pro4R procedure TWebServicesBase.DoNFSeEnviarSincrono; pro4R function TNFSeEnviarSincrono.Executar: acRecSincrono Substituido por acRecepcionar Unit: ACBRNFSEUTIL function AssinarMSXML pro4R Unit:ACBRNFSECONFIGURAÇÕES Procedure TWebServicesConf.SetConfigMunicipio pro4R proGovDigital
  16. Ítalo, boa noite! Fiz as atualizações e não deu mais a mensagem de erro informando que o XML estava sem conteúdo! Muito obrigado! Nos testes(em ambiente de homologação), estou utilizando um certificado de uma empresa que está cadastrada na prefeitura como prestador de serviço, o CNPJ dela que aparece no site é o mesmo que está cadastrado no sistema e no certificado. Agora fico na dúvida se poder ser um problema do provedor, ou do certificado!! Tô mandando um print do retorno e da mensagem! Mais uma vez obrigado!
  17. Segue os anexos!!! 0001-env-lot.xml 0001-env-lot-c.xml 0001-rec.xml 0001-rec-c.xml 0001-env-lot.xml 0001-env-lot-c.xml 0001-rec.xml 0001-rec-c.xml
  18. Ítalo, boa tarde! Ontem, gerei o 0001-env-lot-c.xml mas mesmo assim ainda me retorna a mensagem de "XML de Pedido de Serviço sem Conteúdo". Mas como eu já havia comentado, os arquivos foram validados! Não sei porque a rotina me retorna esta mensagem. Segue em anexo os arquivos que são gerados ao acionar "Gerar e Enviar Lote" Muito obrigado pela a ajuda e atenção!
  19. Italo, boa tarde! Na verdade quando que tento gerar e enviar lote, o sistema me retorna o 0001-env-lot.xml e o 0001-rec.xml, e não o 0001-env-lot-c.xml. Segue os arquivos em anexo e obrigado mais uma vez! 0001-env-lot.xml 0001-rec.xml
  20. Ops!!!! Esqueci do lote que estou gerando!!! 0001-env-lot.xml
  21. Boa noite Italo, Fiz o que você recomendou de atualizar os fontes, e funcionou perfeitamente. Agora está gerando o Lote com seus respectivos RPS. Agora ao gerar e enviar lote, creio que eu esteja esquecendo de de alguma coisa, só que não consigo identificar. Ao gerar e enviar lote, a rotina gera perfeitamente o lote com seus RPS, mas no final me exibe uma mensagem que o XML de Pedido do servico sem conteudo. O que pode ser? No trecho em vermelho realmente não está sendo preenchido. Muito obrigado pela sua ajuda! segue abaixo a procedure de configuração _CtrlNFSE20.Configuracoes.Certificados.NumeroSerie := edtNumSerie.Text; _CtrlNFSE20.Configuracoes.Arquivos.AdicionarLiteral:=True; _CtrlNFSE20.Configuracoes.Arquivos.EmissaoPathNFSe:=True; _CtrlNFSE20.Configuracoes.Arquivos.PastaMensal:=True; _CtrlNFSE20.Configuracoes.Arquivos.PathCan:=edtPathLogs.Text; _CtrlNFSE20.Configuracoes.Arquivos.PathNFSe:=edtPathLogs.Text; _CtrlNFSE20.Configuracoes.Arquivos.PathGer:= edtPathLogs.Text; _CtrlNFSE20.Configuracoes.Arquivos.PathRPS:= edtPathLogs.Text; _CtrlNFSE20.Configuracoes.Arquivos.Salvar:=True; PathMensal:=_CtrlNFSE20.Configuracoes.Arquivos.GetPathNFSe(0); _CtrlNFSE20.Configuracoes.Geral.PathSchemas := edtSchemas.Text; _CtrlNFSE20.Configuracoes.Geral.Salvar := ckSalvar.Checked; _CtrlNFSE20.Configuracoes.Geral.PathSalvar := edtPathLogs.Text; _CtrlNFSE20.Configuracoes.WebServices.CodigoMunicipio := StrToIntDef(edtCodCidade.Text, 0); _CtrlNFSE20.Configuracoes.WebServices.Ambiente := StrToTpAmb(Ok, IntToStr(rgTipoAmb.ItemIndex+1)); _CtrlNFSE20.Configuracoes.WebServices.Visualizar := ckVisualizar.Checked; _CtrlNFSE20.Configuracoes.WebServices.SenhaWeb := edtSenhaWeb.Text; //_CtrlNFSE20.Configuracoes.WebServices.ServicoEnviar; _CtrlNFSE20.Configuracoes.WebServices.ProxyHost := edtProxyHost.Text; _CtrlNFSE20.Configuracoes.WebServices.ProxyPort := edtProxyPorta.Text; _CtrlNFSE20.Configuracoes.WebServices.ProxyUser := edtProxyUser.Text; _CtrlNFSE20.Configuracoes.WebServices.ProxyPass := edtProxySenha.Text; _CtrlNFSE20.Configuracoes.WebServices.SetConfigMunicipio(_CtrlNFSE20.Configuracoes.Geral.PathSchemas); if _CtrlNFSE20.DANFSe <> nil then begin _CtrlNFSE20.DANFSe.Logo := edtLogoMarca.Text; _CtrlNFSE20.DANFSe.PrestLogo := edtPrestLogo.Text; _CtrlNFSE20.DANFSe.Prefeitura := edtPrefeitura.Text; end; lblSchemas.Caption := _CtrlNFSE20.Configuracoes.WebServices.xProvedor;
  22. Ítalo, Muito obrigado pela sua ajuda. Mas os fontes que instalei são de 16/04/2013, acho que são os mais recentes. Não sei se isso faz alguma diferença mas o certificado digital na qual faço o uso do nº de série, é de uma empresa que não está incluída na lista de prestadores(disponibilizado no site da prefeitura), neste caso, independente de ser produção ou homologação, não poderei enviar e validar qualquer lote! Correto? Pude observar quando estava debugando o código e que ao entrar na função assinar ou na função SetConfigMunicipio; tanto ConfigCidade1.AssinaRPS e ConfigCidade1.AssinaLote retonam false. Com isso na função Assinar também fica false e não gera nod de assinatura no arq. XML. creio que isso esteja invalidado o lote. Mais uma vez agradeço a sua ajuda.
  23. Edson, boa tarde! Também estou utilizando os componentes ACBr NFSe com o Demo que é disponivel, Fiz as alterações necessárias, onde gera o RPS e lote com RPS, porém ao validar por exemplo Lote PRS ele me retorna com erro " Erro: EOleException - nfse.xsd#/schema/element[4][@name = 'EnviarLoteRpsEnvio']/complexType[1]/sequence[1]/element[2] Undeclared XSD element : '{http://www.w3.org/2000/09/xmldsig#}Signature' Endereço: 0093427C" Pude observar quando estava observando que ao entrar na função assinar ou na função SetConfigMunicipio; tanto ConfigCidade1.AssinaRPS e ConfigCidade1.AssinaLote retonam false. Com isso na função Assinar também fica false. Eu estou utilizando um certificado digital de uma empresa que não consta na lista de prestadores, e não sei se isso pode ter relação com isso. Então como você já possou por algo parecido, peço a sua ajuda. Desde agradeço a sua atenção e compreensão.
×
×
  • 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...