NFSeConsultaNFSeRPS

A função NFSeConsultaNFSeRPS é usada para consultar os dados de uma NFS-e (se foi emitida ou não) a partir do arquivo de lote de RPS, útil para automatizar a obtenção do número da NFS-e e do código de verificação em caso de perda do número do protocolo de envio.

Tipo de Retorno

Boolean

Pacote

A função NFSeConsultaNFSeRPS está definida dentro do pacote NFSeConsultaNFSeRPS.pkg.

Sintaxe

Move (NFSeConsultaNFSeRPS({iCdMunPrestador}, {sCertificado}, {iTpAmbiente}, ;
      {sVersao}, {sArquivoLote}, {sArquivoSaida}, &{icResultado}, ;
      &{sMsgResultado}, {sCNPJPrestador}, {sIMPrestador}, {sNrRPS}, ;
      {sSerieRPS}, {iTpRPS}, &{sListaMensagemRetorno}, {sProxy}, {sUsuario}, ;
      {sSenha}, {sLicenca}, {sProvedor}, {bExibeErro})) to {bRet}

Onde:

  • {iCdMunPrestador} é o código do IBGE do município do prestador do serviço que está consultando a NFS-e;
  • {sCertificado} é a string que representa o certificado digital que será usado na transmissão dos dados. Se não for informado, uma tela será exibida para o usuário escolher um dos certificados instalados. Você pode obter esta string e armazená-la em um campo de sua base de dados com a função NFSePegaNomeCertificado. No caso do provedor SIMPLISS, em vez de passar o nome do certificado deve-se passar uma string no formato "CNPJ|00000000000000|SENHA" (LITERAL CNPJ, PIPE, número do CNPJ, PIPE e senha);
  • {iTpAmbiente} é o código que indica o ambiente para onde o lote será enviado: 1 - Produção e 2 - Homologação. ATENÇÃO: verifique se existe o ambiente de homologação, pois algumas cidades/provedores não possuem, assim todos os RPS’s são enviados para o ambiente de produção sendo necessário o seu cancelamento;
  • {sVersao} é a versão do XML. Este parâmetro não é usado atualmente e pode ser passado em branco, mas foi mantido por questão de compatibilidade com versões anteriores para que o desenvolvedor não tenha que alterar seu código;
  • {sArquivoLote} é o caminho completo arquivo XML de lote RPS assinado que foi enviado e cujo resultado do processamento será consultado;
  • {sArquivoSaida} é o caminho completo do arquivo XML onde a função irá gravar os dados devolvidos pelo provedor e é necessário abrir este arquivo e ler o resultado para usá-lo em sua aplicação;
  • &{icResultado} é uma variável do tipo Integer que precisa ser passada por referência e que após a execução da função receberá o código do resultado da execução. Um código igual a 5000 indica que a comunicação com o Web Service foi bem sucedida e qualquer outro código de retorno indica um erro. Para saber se o RPS foi ou não convertido em NFS-e é necessário analisar os dados de sArquivoSaida;
  • &{sMsgResultado} é uma variável do tipo String que precisa ser passada por referência e que após a execução da função receberá  a mensagem literal do resultado da chamada do Web Service;
  • {sCNPJPrestador} é número do CNPJ do prestador, que deverá ser informado sem espaços e caracteres separadores;
  • {sIMPrestador} é número da inscrição municipal do prestador, que deverá ser informada sem espaços e caracteres separadores. ATENÇÃO: nos municípios atendidos pelo provedor Equiplano informe o idEntidade neste parâmetro;
  • {sNrRPS} é número do RPS a ser consultado;
  • {sSerieRPS} é a série do RPS a ser consultado;
  • {iTpRPS} é o tipo do RPS a ser consultado;
  • &{sListaMensagemRetorno} é uma variável do tipo String que precisa ser passada por referência e que após a execução da função receberá as mensagens de erro ou advertência do WS. Se o lote foi processado com erros o conteúdo desta variável é que indicará os erros que precisam ser corrigidos;
  • {sProxy} é usado para informar o endereço do servidor proxy, se necesário. Por exemplo ’http://proxyserver:port’. Verificar com o cliente qual é o endereço do servidor proxy e a porta https, pois a porta padrão do https é 443, e sendo assim teríamos algo como ’http://192.168.15.1:443’;
  • {sUsuario} é usado para informar o usuário para autenticação no proxy, se necessário;
  • {sSenha} é usado informar a senha de autenticação no proxy, se necessário;
  • {sLicenca} é usado para informar a chave da licença de uso ou registro. O cancelamento pode ser utilizado sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento ou registro da DLL. Entre em contato para mais informações;
  • {bExibeErro} é usado para indicar se a função deve exibir ou não os erros que ocorrerem na execução; 
  • {sProvedor} é o nome do provedor do serviço. Por exemplo: GINFES, ISS.NET, etc. Esta informações é importante visto que existem particularidades para determinados provedores que serão tratados automaticamente pela função;
  • {bRet} é o retorno da chamada da função onde True indica que a comunicação com o Web Service foi feita com sucesso. Para saber o resultado do processamento é necessário analisar os demais valores devolvidos nos parâmetros passados por referência.

Exemplo

Um exemplo de uso da função pode ser encontrado dentro da Workspace de Exemplo na view RPS.vw, no evento OnClick do botão oConsultaNFSPorRPSButton. Abaixo em detaque a função citada e a chamada da função da Library na linha 31.

NFSeConsultaNFSeRPS - Exemplo

Não encontrou o que precisava, entre em contato conosco.