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

    Número de Ordem reiniciando mês a mês

    avatar
    vinicius.anna
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 199
    Registrado : 29/04/2011

    Número de Ordem reiniciando mês a mês Empty Número de Ordem reiniciando mês a mês

    Mensagem  vinicius.anna 2/2/2017, 13:09

    Bom dia

    Tenho uma função que cria um número de ordem para o mês. Ocorre que, a função abaixo funciona perfeitamente, porém, para cada mês a ser gerado tenho de chamar uma função, por exemplo, no código abaixo tenho a função do mês 1, tenho mais 11 funções...., enfim, há alguma forma de fazer apenas uma função que se execute conforme o mês, reiniciando a numeração?

    Att.
    Vinicius


    Código:

    ' Mês 02
    Public Function fncAgrupamento2()
    On Error GoTo trataerro
    Dim strSql As String
    Dim rs As DAO.Recordset
    Dim ym As Long
    Dim k As Long
    Dim db As DAO.Database
    DBEngine.SetOption dbMaxLocksPerFile, 90000000
    Set db = CurrentDb

    MsgBox "Iniciando Mês 02"
    strSql = "SELECT reg_I250.DataOk, reg_I250.Id_Registro, reg_I250.Registro, reg_I250.Agrupamento, reg_I250.AgCriado FROM reg_I250 WHERE (((Month([DataOk])=2)) AND ((reg_I250.Registro)='I200')) ORDER BY reg_I250.DataOk, reg_I250.Id_Registro, reg_I250.DataOk;"

    Set rs = CurrentDb.OpenRecordset(strSql)
    rs.MoveFirst
    ym = Val(Format(rs!DataOk, "dd")) 'ano/mes
    k = 0
    Do While Not rs.EOF
        If ym = Val(Format(rs!DataOk, "dd")) Then
            k = k + 1
        Else
            k = 1
            ym = Val(Format(rs!DataOk, "dd"))
        End If
        rs.Edit
            rs!AgCriado = (Format(k, "00000"))
        rs.Update
        rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing

    sair:
        Exit Function
    trataerro:
        Select Case Err.Number
            Case 3061
                Resume Next
            Case 3049
                Resume Next
            Case Else
                MsgBox "Erro: (fncRegAgrupI250) " & Err.Number & vbCrLf & Err.Description, vbCritical, "Aviso", _
                Err.HelpFile, Err.HelpContext
        End Select
        Resume sair:


    End Function


    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    Número de Ordem reiniciando mês a mês Empty Re: Número de Ordem reiniciando mês a mês

    Mensagem  Noobezinho 2/2/2017, 17:57

    Vinicius

    Diga qual é o campo dessa numeração e o formato dela:

    Numeração/Mês

    Por exemplo : 001/02, 001/03

    Tem que levar em consideração o ano também:

    Numeração-Mês/Ano

    001-02/17 001-04/17

    Acredito que o resultado vá para o campo AgCriado

    Mas explique melhor o pretendido.

    Aguardo...




    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    vinicius.anna
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 199
    Registrado : 29/04/2011

    Número de Ordem reiniciando mês a mês Empty Número de Ordem reiniciando mês a mês

    Mensagem  vinicius.anna 3/2/2017, 17:29

    Boa tarde

    Trata-se de numeração simples, funcionando assim:
    -Tenho o campo dataOk que possui as datas no intervalo dos 12 meses.....
    por exemplo 01/01/2016 - no campo AgCriado, gera-se 00001
    01/01/2016 - Agcriado 00002 e assim sucessivamente....
    31/01/2016 - AgCriado 00851...

    No mês 02, inicio novamente a numeração, para 00001....

    Até o mês 12....

    A função que disponibilizei abaixo faz isso, mas gostaria de ter apenas uma função que o fizesse para os 12 meses...., hj, tenho 12 funções para fazê-lo...

    Obrigado

    Att.
    Vinicius
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    Número de Ordem reiniciando mês a mês Empty Re: Número de Ordem reiniciando mês a mês

    Mensagem  Noobezinho 3/2/2017, 20:57

    É simples !

    Mas ainda não entendi. Rolling Eyes

    por exemplo 01/01/2016 - no campo AgCriado, gera-se 00001
    01/01/2016 - Agcriado 00002 e assim sucessivamente....
    31/01/2016 - AgCriado 00851...


    Se entendi, os números serão incrementados até o final do mês, retornando

    ao inicio (0001) na virada do mês.

    Se for isso, como quer esse incremento, à medida que vai utilizando, ou seja, acrescentando o registro?

    Todo mês, haverá número repetido, como diferencia esses códigos?

    Fale mais, para eu poder entender, ok?

    Aguardo...


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    vinicius.anna
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 199
    Registrado : 29/04/2011

    Número de Ordem reiniciando mês a mês Empty Re: Número de Ordem reiniciando mês a mês

    Mensagem  vinicius.anna 10/2/2017, 09:56

    Bom dia

    Tenho os registros que vêm de importação de um arquivo txt....., ai, pego os lançamentos e crio o agrupamento criando a partir do número 1 até N para os 12 meses do ano, então, o registro já existe....., é só a inclusão do agrupamento criado para o registro para os 12 meses, reiniciando do número 1 a cada mês.

    Obrigado.

    Att.
    Vinicius

    Conteúdo patrocinado


    Número de Ordem reiniciando mês a mês Empty Re: Número de Ordem reiniciando mês a mês

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 12:02