11.4. Utilidadades
11.4.2. Cria a nova chave de Acesso do CT-e
11.4.1. Cria a chave de Acesso do CT-e
« Anterior
11.4.3. Envia e-mail [18-03-12]
Próximo »

11.4.2. Cria a nova chave de Acesso do CT-e


Assinatura:

int CriaChaveCTeNovo(string cUF, string Ano, string Mes, string CNPJ, string Modelo, string serie, string numero, string tpEmis, string codigoSeguranca, string msgResultado, string cCT, string cDV, string chaveCTe)

Descrição:

Funcionalidade para criar a chave de acesso do CT-e com o tpEmis na composição da chave

A tag tpEmis do CT-e que indica a forma de emissão da CT-e (normal, contingência, etc) foi acrescentada na composição da chave de acesso, para não haver alteração do tamanho da chave de acesso o tamanho da tag cCT foi reduzida para 8 dígitos.

5.4 Chave de Acesso do CT-e

A Chave de Acesso do Conhecimento de Transporte Eletrônico é representada por uma sequência de 44 caracteres numéricos, representados da seguinte forma:

Código da UF AAMM da emissão CNPJ do Emitente Modelo Série Número do CT-e Forma de Emissão Código Numérico DV
Quantidade de caracteres 02 04 14 02 03 09 01 08 01

A Chave de Acesso do Conhecimento de Transporte Eletrônico não existe como a sequência acima descrita no leiaute do CT-e, devendo ser composta pelos seguintes campos que se encontram dispersos no leiaute do CT-e (vide Anexo I):

  • cUF - Código da UF do emitente do Documento Fiscal
  • AAMM - Ano e Mês de emissão do CT-e
  • CNPJ - CNPJ do emitente
  • mod - Modelo do Documento Fiscal
  • serie - Série do Documento Fiscal
  • nCT - Número do Documento Fiscal
  • tpEmis - Forma de emissão
  • cCT - Código Numérico que compõe a Chave de Acesso
  • cDV - Dígito Verificador da Chave de Acesso

Parâmetros:

nome tipo fluxo descrição
cUF string entrada informar o conteúdo da tag cUF - código da UF na codificação do IBGE: Ex. 35=SP, 43=RS, etc.
Ano string entrada informar o Ano da data de emissão com dois dígitos
Mes string entrada informar o Mês da data de emissão com dois dígitos
CNPJ string entrada informar o conteúdo da tag CNPJ - CNPJ do emissor
modelo string entrada informar o conteúdo da tag modelo - modelo do CT-e (valor fixo: 57)
serie string entrada informar o conteúdo da tag serie - série do CT-e, informar zero se série única
numero string entrada informar o conteúdo da tag nNF - número do CT-e
tpEmis string entrada informar o conteúdo da tag tpemis - forma de emissão do CT-e: 1- Normal, 5-Contigência FS-DA, 7-Autorização pela SVC-RS, 8-Autorização pela SVC-SP (campo novo)
codigoSeguranca string entrada informar uma literal que será utilizado para gerar o cCT - Código Numérico que compõe a Chave de Acesso, deve ser um literal única para o emissor e dele depende o segredo da formação do cCT, pois é este código que vai individualizar o algoritmo de cálculo que é pública.
msgResultado string saída retorna a literal do resultado da chamada do WS
cCT string saída retorna o Código Numérico que compõe a Chave de Acesso, deve ser informado na tag cCT
cDV string saída retorna o DV da Chave de Acesso, deve ser informado na tag cDV
chaveCTe string saída retorna a chave de Acesso do CT-e, deve ser informado no atributo Id da tag infCTe, precedida da literal CTe.

O resultado da chamada do criachaveNfe devolve um código numérico com os seguintes significados:

código Mensagem
0 OK - Chave de Acesso do CT-e criada
1 Erro: cUF: [cUF informado] inválido
2 Erro: ano: [ano informado] inválido
3 Erro: mês: [mes informado] inválido
4 Erro: CNPJ: [CNPJ informado] inválido
5 Erro: modelo [modelo informado] inválido
6 Erro: série [série informado] inválida
7 Erro: número [número do documento fiscal informado] inválido
8 Erro: código de segurança não informado
9 Erro: tpEmis[tpEmis informado] inválido

Histórico de atualização:

Exemplos de uso:

Visual Basic 6.0

'
'     gera a chave de acesso do CT-e
'
'     utilizar a função criaChaveCTeNovo para gerar a chave de acesso, código do CT-e e DV
'
'=========variáveis de trabalho
'
'
Dim Resultado As Long
Dim cUF, ano, mes, modelo, serie, tpEmis, numero, codigoSeguranca As String
Dim msgResultado As String
Dim cCT As String
Dim CNPJ As String
Dim cDV As String
Dim ChaveCTe As String
'
cUF = "35"                  ' informar o conteúdo da tag cUF - código da UF na codificação do IBGE: Ex. 35=SP, 43=RS
ano = "13"                  ' informar o ano da data de emissão com 2 dígitos, ex.: Format(ide_dEmi, "YY")
mes = "05"                  ' informar o mês da data de emissão com 2 dígitos, ex.: Format(ide_dEmi, "mm")
CNPJ = "00000000000191"     ' informar o conteúdo da tag CNPJ - CNPJ do emissor
modelo = "57"               ' informar o conteúdo da tag modelo - modelo do CT-e (valor fixo: 57)
serie = "1"                 ' informar o conteúdo da tag serie - série do CT-e, informar zero se série única
numero = "123"              ' informar o conteúdo da tag nCT - número do CT-e
'
'  parâmetro novo da versão 2.00
'
tpEmis = "1"                ' informar o conteúdo da tag tpemis - forma de emissão do CT-e: 1- Normal, 5-Contigência
'                              FS-DA, 7-Autorização pela SVC-RS, 8-Autorização pela SVC-SP
'
codigoSeguranca = "segredo" ' informar uma literal que será utilizado para gerar o cCT - Código Numérico que compõe a
'                             Chave de Acesso, deve ser um literal única para o emissor e dele depende o segredo da
'                             formação do cCT, pois é este código que vai individualizar o algoritmo de cálculo que é
'                             pública.
'
cCT = ""                    ' retorna o Código Numérico que compõe a Chave de Acesso, deve ser informado na tag cCT
'                             do grupo ide
cDV = ""                    ' retorna o DV da Chave de Acesso, deve ser informado do grupo ide
ChaveCTe = ""               ' retorna a chave de Acesso do CT-e, deve ser informado no atributo Id da tag infCTe,
'                             precedida da literal CTe
msgResultado = ""
 
'
' instancia a DLL - late binding
'
Dim objCTeUtil As Object
'
Set objCTeUtil = CreateObject("CTe_Util.Util")
 
If objCTeUtil.CriaChaveCTeNovo(cUF, ano, mes, CNPJ, modelo, serie, numero, tpEmis, codigoSeguranca, msgResultado, cCT, cDV, ChaveCTe) <> 0 Then
   MsgBox "Ocorreu um erro ao gerar a chave de acesso " + msgResultado, vbInformation, "Resultado"
Else
 
' IMPORTANTE: NÃO ESQUECER DE UTILIZAR OS SEGUINTES PARAMETROS DE RETORNO DA CHAMADA
'
' z = cCT                ' retorna o Código Numérico que compõe a Chave de Acesso, deve ser informado na tag cCT do
'                          grupo ide
' y = cDV                ' retorna o DV da Chave de Acesso, deve ser informado do grupo ide
' w = ChaveCTe           ' retorna a chave de Acesso do CT-e, deve ser informado no atributo Id da tag infCTe,
'                          precedida da literal CTe
'

   MsgBox "Chave de acesso gerada: " + chaveCTe, vbInformation, "Resultado"
 
End If
11.4.2. Cria a nova chave de Acesso do CT-e
11.4. Utilidadades
« Anterior
11.4.1. Cria a chave de Acesso do CT-e
Próximo »
11.4.3. Envia e-mail [18-03-12]