CTeInutilizar

A função CTeInutilizar é usada para inutilizar uma faixa de numeração de CT-e.

Tipo de Retorno

Boolean

Pacote

A função CTeInutilizar está definida no pacote CTeInutilizar.pkg.

Sintaxe

Move (CTeInutilizar({sSiglaWS},{sUF},{iTpAmbiente},{sNmCertificado}, ;
{sDiretorio},{iCdUF},{iAno},{sCNPJ},{sModelo},{sSerie}, ;
{iNrCTeInicial},{iNrCTeFinal},{sJustificativa},(&{sdhRecbto}), ;
(&{snProt}),{sProxy},{sUsuario},{sSenha},{sLicencaCTeLibraryDLL}, ;
(&{sResultado}),{bExibeErro},(&{iCdRetorno}))) to {bRetorno}

Onde:

  • {sSiglaWS} é a sigla do Web Service para o qual será enviada a solicitação. Veja mais detalhes aqui.
  • {sUF} é a UF do emissor do CT-e.
  • {iTpAmbiente} ambiente do CT-e para o qual será enviada a solicitação de inutilização: 1 - Produção / 2 - Homologação.
  • {sNmCertificado} é 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 CTePegaNomeCertificado.
  • {sDiretorio} é o diretório onde, em caso da inutilização ser bem sucedida, será gerado o arquivo "#####-inu.xml".
  • {iCdUF} é o código da UF (Tabela IBGE) de localização do emissor.
  • {iAno} é o ano com 2 dígitos. Considerar o ano em que tenha ocorrido a quebrada da sequência, se o problema ocorreu em dezembro/2009, mesmo que a inutilização seja solicitada em 2010, o ano deve ser 2009.
  • {sCNPJ} é o CNPJ do emissor.
  • {sModelo} é o modelo do documento fiscal (57).
  • {sSerie} é a série. A informação da serie com zeros não significativos provoca Falha de Schema, assim informe 1 ao invés de 001.
  • {iNrCTeInicial} é o número do CT-e inicial a ser inutilizado. No caso de inutilização de um único número, o número inicial e final devem ser iguais.
  • {iNrCTeFinal} é o número do CT-e final a ser inutilizado.
  • {sJustificativa} é a justificativa da inutilização.
  • &{sdhRecbto} é uma variável do tipo String que precisa ser passada por referência. Se a inutilização for homologada com sucesso, você receberá de volta nesta variável a data e hora do recebimento do pedido de inutilização do SEFAZ.
  • &{snProt} é uma variável do tipo String que precisa ser passada por referência. Se a inutilização for homologada com sucesso, você receberá de volta nesta variável o número do protocolo da SEFAZ.
  • {sProxy} é usado para informar ’http://proxyserver:port’ quando existir uso de proxy no ambiente. Verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo ’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.
  • {sLicencaCTeLibraryDLL} é usado para informar a chave da licença da DLL CTeLibraryDLL. Esta função pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento. Entre em contato conosco para obter a chave de licença.
  • &{sResultado} é uma variável do tipo String que precisa ser passada por referência. Após a execução da função, esta variável terá uma mensagem literal com o resultado da chamada. No caso de erro, será a mensagem de erro.
  • {bExibeErro} é usado para indicar se a função deve exibir ou não os erros que ocorrerem na execução.
  • &{iCdRetorno} é uma variável do tipo Integer que precisa ser passada por referência. Após a execução da função, esta variável terá o código de retorno (cStat) devolvido pela SEFAZ ou um código de erro interno.
  • {bRetorno} é o retorno da chamada da função. True indica que a inutilização foi feita com sucesoo. Um retorno False indica falha. Neste caso, consulte o valor de iCdRetorno e sResultado para saber o motivo da falha.

Exemplo

Procedure Inutilizar Integer iAno Integer iNrCTeIni ;
Integer iNrCTeFim String sJustificativa
Boolean bOk
Integer iCdRetorno
String sdhRecbto
String snProt
String sResultado

Move (CTeInutilizar(Config.sSgWS,Config.sUFEmissor, ;
Config.iTpAmbiente,"",Config.sDirInut,35,iAno, ;
Config.sCNPJ,"57","0",iNrCTeIni,iNrCTeFim,sJustificativa, ;
(&sdhRecbto),(&snProt),"","","","",(&sResultado),True, ;
(&iCdRetorno))) to bOk
End_Procedure // Inutilizar

Observações

  • As causas mais comuns de não utilização de número são a quebra de sequência da numeração em razão da rejeição do CT-e ou perda de conhecimentos de transporte eletrônicos por alguma falha do ambiente de recepção ou de comunicação ou até mesmo a falha no uso de números da aplicação de faturamento.
  • O uso desta funcionalidade tem para o fisco o carater de denúncio expotânea. Sendo assim, só utilize esta funcionalidade como última opção.

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