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


4 participantes

    [Resolvido]Reiniciar numeração no início do ano

    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 5/1/2016, 12:21

    Bom Dia senhores..

    Faço aplicações em access 2003 há alguns anos mas não entendo muito como alterar os códigos.

    Desenvolvi uma aplicação em access na empresa que trabalho usada por aproximadamente 15 pessoas simultaneamente para comunicação interna (CI) e pedidos, e em ambas eu utilizava numeração automática do access em 2015.

    Como verifiquei que não teria como zerar a numeração sem perder os dados anteriores, resolvi utilizar a seguinte solução apresentada aqui no maximoaccess que resolveria meu problema:

    =SeImed(DContar("[Nº CI]";"CI")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Nº CI]";"CI");3)+1) & Ano(Data());"000\/0000"))


    O problema é que se eu tenho um número 558/2015 por exemplo, o primeiro número de janeiro de 2016 passa a ser "559/2016"

    Gostaria de saber uma solução para quando alterar o ano começar do 001.

    Já vi em outros tópicos ensinando a fazer isso através de programação, mas eu não consegui.


    Pretendo participar ainda muito do fórum, pois faço alterações no meu sistema quase que diariamente.

    Grande abraço
    Eduardo


    Última edição por duluzsc em 8/1/2016, 12:13, editado 1 vez(es)
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  JPaulo 5/1/2016, 12:28

    Ola seja bem vindo ao forum;

    Assunto imensamente debatido aqui;

    Um exemplo;
    https://www.maximoaccess.com/t2149-resolvidonumeracao-com-a-mudanca-de-ano



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    numeração - [Resolvido]Reiniciar numeração no início do ano Folder_announce_new Utilize o Sistema de Busca do Fórum...
    numeração - [Resolvido]Reiniciar numeração no início do ano Folder_announce_new 102 Códigos VBA Gratuitos...
    numeração - [Resolvido]Reiniciar numeração no início do ano Folder_announce_new Instruções SQL como utilizar...
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 5/1/2016, 12:42

    Obrigado pela Resposta JPaulo

    Primeiro gostaria de agradecer pelas boas vindas e rapidez da resposta.


    Peço um pouco de paciência comigo pela falta de conhecimento em programação. Vi esses tópicos que mencionou mas não consegui implementar no meu programa.

    Como disse, coloquei essa formula =SeImed(DContar("[Nº CI]";"CI")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Nº CI]";"CI");3)+1) & Ano(Data());"000\/0000")) em valor padrão e a mesma não zera no início do ano. Existe um jeito de aprimorar essa mesma fórmula em VALOR PADRÃO ou realmente tenho que inserir em códigos.

    Se for necessário inserir códigos, gostaria que alguém tentasse me explicar passo a passo.


    Obrigado
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Alvaro Teixeira 5/1/2016, 14:13

    Olá Eduardo, seja bem-vindo ao MaximoAccess.
    Como o amigo JPaulo, fez referencia não falta exemplos, veja este abaixo
    https://www.maximoaccess.com/t20018-resolvidonumeracao-muda-conforme-ano-0000-ano-atual?highlight=reiniciar+numeracao+ano
    Na minha opinião, talvez seja mais adequado ao que pretende.
    Este reinicia anualmente.
    Tente estudar e adapatar ao seu projecto.

    Qualquer coisa estamos cá.
    Abraço e bons estudos
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 7/1/2016, 14:38

    Acabei aplicando uma solução encontrada aqui no maximoaccess e deu parcialmente certo.
    Gostaria que me ajudassem para que eu possa resolver completamente essa minha pendência.

    Com a solução apresentada abaixo, está dando certo a numeração automática, porém preciso primeiro criar e clicar em um botão "NOVO REGISTRO".

    Gostaria de uma solução para "AO CARREGAR" ou mesmo em um formulário anterior, criar um botão que ao clicar entre nesse novo form já com o novo registro, sem precisar clicar em um botão antes de começar a cadastrar.




    Option Compare Database
    Option Explicit


    'Criado por Balem em 28/07/14
    Private Sub Nome_Dirty(Cancel As Integer)
    'Se não for novo registro, então pode editar.
    If Not Me.NewRecord Then
    Exit Sub
    End If
    If Me.RecordsetClone.RecordCount = 0 Then
    ' a tabela está sem registros
    Me.txtNrCI = Format("1", "0000") & "/" & Year(Date)

    Else
    If DCount("*", "CI", "Right([NrCI],4) = " & Year(Date)) <> 0 Then
    Me.txtNrCI = Format(Left(DMax("[NrCI]", "CI", "Right([NrCI],4)= " & Year(Date)), 4) + 1, "0000") & "/" & Year(Date)

    Else

    MsgBox "Reiniciando contagem dos registros para o novo ano." _
    & vbCrLf & "No aplicativo, retire essa msgbox.", vbInformation, "Aviso"

    Me.txtNrCI = Format("1", "0000") & "/" & Year(Date)


    End If
    End If
    End Sub

    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Alvaro Teixeira 7/1/2016, 14:52

    Olá,
    Efectue um backup e tente com código abaixo no evento "No actual" do formulário:

    Código:
    Private Sub Form_Current()
    'ahteixeira 2016 para MaximoAccess v1.1
        If CStr(Me.NewRecord) = -1 Then
            
            If DCount("*", "CI", "Right([NrCI],4) = " & Year(Date)) <> 0 Then
                Me.txtNrCI = Format(Left(DMax("[NrCI]", "CI", "Right([NrCI],4)= " & Year(Date)), 4) + 1, "0000") & "/" & Year(Date)
            Else
            MsgBox "Reiniciando contagem dos registros para o novo ano." _
            & vbCrLf & "No aplicativo, retire essa msgbox.", vbInformation, "Aviso"
            
            Me.txtNrCI = Format("1", "0000") & "/" & Year(Date)
            End If
        End If
    End Sub

    Abraço


    Última edição por ahteixeira em 7/1/2016, 16:15, editado 1 vez(es)
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 7/1/2016, 15:35

    ahteixeira

    Muito obrigado.. Resolvido.

    Substituí o código que eu havia colocado aqui por este que você passou e deu certo. Ao entrar no formulário agora já aparece o novo número sequencial. Só fiquei com uma dúvida, puro preciosismo, mas se for fácil de resolver...
    Antes eu havia criado um botão desfazer e além de limpar os dados de cadastro ele cancelava o número sequencial, podendo aproveitar o mesmo no próximo cadastro. Agora quando clico em desfazer, apaga todos os campos mas grava o número sequencial (NrCI).


    Se tiver alguma sugestão ótimo, caso contrário essa solução que você deu já resolve meu problema.


    Abraço
    Eduardo
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Assis 7/1/2016, 15:42

    Teixeira

    Para essa numeração como deve ser o tipo de dados do campo na tabela ?


    .................................................................................
    *** Só sei que nada sei ***
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 7/1/2016, 15:56

    texto

    É isso que quer saber?
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Alvaro Teixeira 7/1/2016, 16:24

    Olá a todos, antes de tudo actualizei código da mensagem nº 6 (faltava end if. acontece) Very Happy

    Assis, é mesmo isso que Eduardo disse, Texto.

    Eduardo, no seu botão pode colocar apenas conforme abaixo:
    Código:
    Private Sub cmdCanc_Click()
        Me.Undo
        Call Form_Current
    End Sub

    Se não desejar que seja feita novamente a numeração retire Call Form_Current
    Anexo teste
    Abraço
    Anexos
    numeração - [Resolvido]Reiniciar numeração no início do ano Attachmentnumeracao_evento_atual_duluzsc.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (26 Kb) Baixado 59 vez(es)


    Última edição por ahteixeira em 7/1/2016, 16:57, editado 2 vez(es)
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 7/1/2016, 16:48

    Muito obrigado novamente ahteixeira

    Quanto ao "end if" que faltava eu já havia percebido e corrigi.

    Implementei o código que me passou no botão cancelar e não deu certo, após entrar e preencher o novo número o botão continua apagando os dados mas perco aquele número.

    Baixei a aplicação que mandou como exemplo e ao clicar Novo Registro da erro no access e trava.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Alvaro Teixeira 7/1/2016, 16:58

    Olá, baixe de novo.
    Abraço
    avatar
    duluzsc
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 41
    Registrado : 05/01/2016

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  duluzsc 7/1/2016, 17:59

    Ok.. nesse que você mandou agora ele cancela e fecha o formulário certo??

    Eu criei um aqui pra teste e deu certo (anexo), só tenho que olhar com calma no meu arquivo que ta mais completo porque não tá zerando.

    Mas tá resolvido, ficou ótimo.. É questão de prestar atenção e ver o que tá acontecendo no meu arquivo e adaptar..


    Agradeço muito a atenção dos amigos, me ajudaram muito.


    Grande abraço
    Anexos
    numeração - [Resolvido]Reiniciar numeração no início do ano AttachmenttesteCI.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (58 Kb) Baixado 53 vez(es)
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Alvaro Teixeira 8/1/2016, 11:20

    Olá Eduardo, é mesmo isso, qualquer coisa estamos cá  Wink
    Obrigado pelo retorno, os utilizadores do fórum agradecem.

    Faltou apenas dar o tópico como resolvido, veja como fazer:
    https://www.maximoaccess.com/t860-resolucao-de-topicos
    Abraço

    Conteúdo patrocinado


    numeração - [Resolvido]Reiniciar numeração no início do ano Empty Re: [Resolvido]Reiniciar numeração no início do ano

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 17:37