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

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    jeanrocha
    jeanrocha
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 13/08/2013

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    Mensagem  jeanrocha 29/4/2017, 02:16

    Prezados,

    Preciso de uma ajuda com um código na tabela de produtos
    Tabela Cliente
    Tenho o campos CodCli e um campo IDCliente(tipo número), Data e demais campos
    Tabela Propriedade
    Tenho o campos CodPro e um campo IDCliente(tipo número), um IDPropriedade(tipo número), data e demais campos,

    Problema 1: Gostaria que ao clicar em novo registro na tabela Cliente
    Pegasse os 2 dígitos finais do ano e depois colocasse uma sequencia de 3 números começando do 001 no campo IDCliente.

    Exemplo:
    Se eu cadastrasse 2 clientes em 2016 ficaria no IDCliente: 16001 e 16002, respectivamente.
    se em 2017 cadastrasse mais 2 Clientes ficaria no IDCliente: 17001 e 17002, respectivamente. E assim por diante.

    Problema 2:

    Na tabela propriedade eu gostaria que fizesse a mesma coisa só que iniciando novamente do 01 para cada propriedade
    cadastrada incluindo a sequência do ID cliente mais 2 dígitos para a propriedade.

    Exemplo se eu cadastrasse uma propriedade para o cliente 16001 ele colocasse no IDPropriedade 1600101, se eu cadastrasse 1 propriedade
    para o cliente 17002 ficaria na IDPropriedade 1700201 e assim por diante.

    Desde já agradeço a colaboração. Vocês são muito bons no que fazem. Este site é o melhor em access.




    Última edição por jeanrocha em 2/5/2017, 21:15, editado 2 vez(es)
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1396
    Registrado : 07/12/2011

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty Re: [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    Mensagem  tauron 29/4/2017, 13:57

    Bom dia Jean,

    Veja se te ajuda nos estudos:
    Anexos
    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto AttachmentIDANO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (20 Kb) Baixado 21 vez(es)
    jeanrocha
    jeanrocha
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 13/08/2013

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty Re: [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    Mensagem  jeanrocha 2/5/2017, 21:14

    Show de bola é isto mesmo.

    Muito Obrigado

    Eu fiz apenas uma modificação para funcionar corretamente.


    Function proximoNumero() As String
    'Função que busca o último número do mês
    'e acrescenta um para criar o próximo
    Dim strSql As String
    Dim rstDoc As New ADODB.Recordset
    Dim numeroEncontrado As Integer
    'Cria a consulta SQL buscando os números do mês atual
    'em ordem descendente para que o último fique em primeiro
    strSql = "Select Lote From tblEntradaMudasDetalhe " & _
    "Where (Lote Like '" & Format(Date, "yy") & "%') " & _
    "Order By Lote Desc"
    'Abre o recordset
    rstDoc.Open strSql, CurrentProject.Connection, adOpenStatic, adLockReadOnly
    'Se encontrou algum pega o primeiro
    'senão retorna zero
    If rstDoc.RecordCount > 0 Then
    numeroEncontrado = CInt(right(rstDoc("Lote"), 4)) ' Mudei de left para right pois estava mudando o ano
    Else
    numeroEncontrado = 0
    End If
    'Próximo número = numero encontrado +1 mais o mês e ano atual com dois dígitos
    proximoNumero = Format(Date, "yy") & Format(numeroEncontrado + 1, "0000")
    'Fecha o recordset
    rstDoc.Close
    Set rstDoc = Nothing
    End Function


    Última edição por jeanrocha em 13/7/2017, 01:44, editado 1 vez(es)
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1396
    Registrado : 07/12/2011

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty Re: [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    Mensagem  tauron 2/5/2017, 22:00

    Entao se ja solucionou esta questao, clique no botao "resolvido" para encerrar o topico.
    jeanrocha
    jeanrocha
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 13/08/2013

    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty Aprimoramento do Código

    Mensagem  jeanrocha 7/7/2017, 18:46


    Como eu faço para usar letras com este código? no código ficou 170001 eu queria deixar com M17L0001.

    Conteúdo patrocinado


    [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto Empty Re: [Resolvido]Id Personalizado ano/codcli/codprod ano/cliente/produto

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 10:28