MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Dígito verificador - GTIN

    Compartilhe
    avatar
    Jr.Wano
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 29/01/2010

    Dígito verificador - GTIN

    Mensagem  Jr.Wano em Qua 07 Set 2011, 00:54

    Como calcular os dígitos verificadores dos códigos:

    GTIN-8 antigo EAN-8
    GTIN-12 antigo Código UPC
    GTIN-14 antigo DUN-14

    Finalidade: Validar os campos EAN e EANtrib da Nóta Fiscal Eletrônica

    Se alguém precisar tenho o do EAN-13, mas não estou conseguindo os demais.
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12240
    Registrado : 01/03/2011

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  HARYSOHN em Qua 07 Set 2011, 12:52

    Envie a1 o 13 para que possamos ver...


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    [Você precisa estar registrado e conectado para ver este link.]

    Iniciando no Access? Então veja esse [Você precisa estar registrado e conectado para ver este link.] e também [Você precisa estar registrado e conectado para ver este link.]


    [Você precisa estar registrado e conectado para ver este link.]

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12240
    Registrado : 01/03/2011

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  HARYSOHN em Qua 07 Set 2011, 15:01

    Amigão.. eu me aventurei aqui a algo...
    não sei se é asssim... mas..

    [Você precisa estar registrado e conectado para ver este link.]

    Saudações


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    [Você precisa estar registrado e conectado para ver este link.]

    Iniciando no Access? Então veja esse [Você precisa estar registrado e conectado para ver este link.] e também [Você precisa estar registrado e conectado para ver este link.]


    [Você precisa estar registrado e conectado para ver este link.]

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Jr.Wano
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 29/01/2010

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  Jr.Wano em Qua 07 Set 2011, 15:52

    Hary,

    Vou testar os códigos que vc. postou e retórno.

    Para o EAN-13, uso este:

    Private Function DV_EAN13(Number As String)
    ' Retorna o Digito verificador para o EAN-13.
    Dim Dig1 As Integer, Dig2 As Integer, i As Integer
    Dig1 = 0
    Dig2 = 0
    For i = 1 To 11 Step 2
    Dig1 = Dig1 + Val(Mid$(Number, i, 1))
    Next i
    For i = 2 To 12 Step 2
    Dig2 = Dig2 + Val(Mid$(Number, i, 1))
    Next i
    DV_EAN13 = Chr$(((220 - (Dig2 * 3 + Dig1)) Mod 10) + 48)
    'MsgBox DV_EAN13, vbInformation, "Dígito verificador"
    End Function

    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12240
    Registrado : 01/03/2011

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  HARYSOHN em Qua 07 Set 2011, 16:28

    O valor do seu código retornou o mesmo que o meu?

    Quantos numeros tem aos outros códigos de barras?


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    [Você precisa estar registrado e conectado para ver este link.]

    Iniciando no Access? Então veja esse [Você precisa estar registrado e conectado para ver este link.] e também [Você precisa estar registrado e conectado para ver este link.]


    [Você precisa estar registrado e conectado para ver este link.]

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Jr.Wano
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 149
    Registrado : 29/01/2010

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  Jr.Wano em Qua 07 Set 2011, 16:35

    No EAN13

    1) 123456789012 No seu retórna 0 - no meu 8

    2)Este é um EAN-13 registrado: 7840755000329 aonde 9 é o dígito
    No seu retórna 5 - No meu está correto: 9

    Estou testando o seu com os outros GTIN, já retórno.
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12240
    Registrado : 01/03/2011

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  HARYSOHN em Qua 07 Set 2011, 16:55

    No meu o retorno é poque esta configurado apenas para 11 digitos confome o Gtin12


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    [Você precisa estar registrado e conectado para ver este link.]

    Iniciando no Access? Então veja esse [Você precisa estar registrado e conectado para ver este link.] e também [Você precisa estar registrado e conectado para ver este link.]


    [Você precisa estar registrado e conectado para ver este link.]

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7139
    Registrado : 11/05/2010

    Re: [Resolvido]Dígito verificador - GTIN

    Mensagem  vieirasoft em Qui 15 Set 2011, 11:10

    Como não houve retorno, o tópico passa a resolvido. Qualquer coisa reabra, por favor.

    HANTHONY
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 22/07/2011

    CODIGO VBA PARA VALIDAR O EAN13

    Mensagem  HANTHONY em Qui 01 Set 2016, 16:49

    Attribute VB_Name = "Mod_Valida_EAN13"
    Option Compare Database

    Function Valida_EAN13(Str_Numero)
       Str_Par = 0
       Str_ImPar = 0

       Str_Numero = Format(Str_Numero, "000000000000")

       Dim Str_Posicao2 As Double
       Dim Str_Posicao4 As Double
       Dim Str_Posicao6 As Double
       Dim Str_Posicao8 As Double
       Dim Str_Posicao10 As Double
       Dim Str_Posicao12 As Double
       '
       Dim Str_Posicao1 As Double
       Dim Str_Posicao3 As Double
       Dim Str_Posicao5 As Double
       Dim Str_Posicao7 As Double
       Dim Str_Posicao9 As Double
       Dim Str_Posicao11 As Double



       Str_Posicao2 = Mid(Str_Numero, 2, 1)
       Str_Posicao4 = Mid(Str_Numero, 4, 1)
       Str_Posicao6 = Mid(Str_Numero, 6, 1)
       Str_Posicao8 = Mid(Str_Numero, 8, 1)
       Str_Posicao10 = Mid(Str_Numero, 10, 1)
       Str_Posicao12 = Mid(Str_Numero, 12, 1)
       '
       Str_Posicao1 = Mid(Str_Numero, 1, 1)
       Str_Posicao3 = Mid(Str_Numero, 3, 1)
       Str_Posicao5 = Mid(Str_Numero, 5, 1)
       Str_Posicao7 = Mid(Str_Numero, 7, 1)
       Str_Posicao9 = Mid(Str_Numero, 9, 1)
       Str_Posicao11 = Mid(Str_Numero, 11, 1)

       Str_Soma_Pares = (Str_Posicao2 + Str_Posicao4 + Str_Posicao6 + Str_Posicao8 + Str_Posicao10 + Str_Posicao12) * 3
       Str_Soma_ImPares = Str_Posicao1 + Str_Posicao3 + Str_Posicao5 + Str_Posicao7 + Str_Posicao9 + Str_Posicao11
       Soma_Par_Impar = Str_Soma_Pares + Str_Soma_ImPares


       If Soma_Par_Impar Mod 10 = 0 Then
           Str_DV = 0
       Else
           For i = 0 To 9
               Str_Verifica = Soma_Par_Impar + i
               If Str_Verifica Mod 10 = 0 Then
                   Str_DV = i
                   GoTo finaliza:
               End If
           Next i
       End If


    finaliza:

       Valida_EAN13 = Mid(Str_Numero, 1, 12) & Str_DV


    End Function Very Happy Very Happy Very Happy Question Question

      Data/hora atual: Seg 20 Nov 2017, 15:37