MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    Numeração automática personalizada

    avatar
    MaykonBraga
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 7
    Registrado : 11/02/2016

    Numeração automática personalizada Empty Numeração automática personalizada

    Mensagem  MaykonBraga 12/2/2016, 12:17

    Estou trabalhando com um BD para cadastro e controle de Ativos, cada item deve ter um número de controle de 9 dígitos com o formato 001.001.001 onde os 3 primeiros são "Grupo", os 3 seguintes são "Sub Grupos" e os 3 últimos são referente ao item. Há uma tabela chamada Grupo onde são cadastrados os grupos e gerados a chave primária, até aí tudo bem. Na segunda tabela são cadastrados os sub grupos, é aqui que fica complicado: No formulário “Cadastro SubGrupos” há um campo para digitar o nome do sub grupo e uma caixa de seleção que puxa os nomes do grupo da tabela “Grupo” e um campo para receber o Código do Sub Grupo, “CodSubgrupo”. Nesse campo gostaria que apresentasse o código composto por 6 dígitos, onde os 3 primeiros são o número do grupo (001 por exemplo) e os 3 últimos o numero sequencial do sub grupo, caso seja o primeiro subgrupo do grupo 001, o código fica sendo 001.001 e dando sequência 001.002, 001.003. E quando escolher outro grupo, acontecesse a mesma coisa, 002.001, 002.002 e assim por diante. Ao final gostaria de fazer a mesma coisa com o código dos itens, onde eu informaria qual o grupo e sub grupo e apareceria o código automaticamente: 002.005.001, 002.005.002 e assim por diante.

    Eu tentei adaptar um código que encontrei aqui mesmo no fórum que era exatamente o que eu queria, mas não deu certo.

    Código:
    Private Sub CodGrupo_AfterUpdate()
    Dim numeroencontrado As String, proximoNumero As Integer
    'By JPaulo ® Maximo Access
    'encontrar o ultimo numero na tabela
    numeroencontrado = Nz(DMax("CodSubgrupo", "SubGrupo", "[CodGrupo] = " & Me.CodGrupo.Value), 0)
        If IsNull(numeroencontrado) Or numeroencontrado = "" Or numeroencontrado = "0" Then
        'se não existir numeração, insere o equipamento + 001 para iniciar
            numeroencontrado = Me.CodGrupo.Value & "-" & "001"
        'devolve ao campo a nova numeração
            Me.CodSubgrupo.Value = numeroencontrado
        Else
        'se já existir numeração na tabela, acrescenta +1
            proximoNumero = Right(DMax("CodSubgrupo", "SubGrupo", "[CodGrupo] = " & Me.CodGrupo.Value), 3) + 1
        'devolve ao campo a nova numeração
            Me.CodSubgrupo.Value = Me.CodGrupo.Value & "-" & Format(proximoNumero, "000")
        End If

    End Sub

    Alguém poderia por favor me ajudar?
    Desde já agradeço.
    rubenscouto
    rubenscouto
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 680
    Registrado : 02/10/2011

    Numeração automática personalizada Empty Re: Numeração automática personalizada

    Mensagem  rubenscouto 5/3/2016, 04:40

    Um modelo de codigo.
    Anexos
    Numeração automática personalizada AttachmentNumeroAutomaticoSubForm.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (103 Kb) Baixado 97 vez(es)

      Data/hora atual: 8/9/2024, 01:20