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

    Atualizar tabela com nro sequencial baseado em dois critérios

    avatar
    Demitrius Luz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 30/01/2017

    Atualizar tabela com nro sequencial baseado em dois critérios Empty Atualizar tabela com nro sequencial baseado em dois critérios

    Mensagem  Demitrius Luz 1/2/2017, 09:43

    Bom dia a todos!
    Tenho uma tabela com a seguinte estrutura:

    DOC   |  DATA  |  LOG_ALTERACAO
    0010  |  01/05  |  000101
    0010  |  01/05  |  000102
    0012  |  01/05  |  000110
    0012  |  02/05  |  000117
    0012  |  04/05  |  000121
    0013  |  04/05  |  000113
    0013  |  04/05  |  000116

    Ela representa uma lista de documentos e suas respectivas datas de alterações e o nro de log decorrente destas.
    Preciso atualizar esta tabela com um novo campo que ordene estas modificações em cada documento, baseado nas datas de revisão e, havendo duas alterações na mesma data, baseado no log de alteração, do menor valor para o maior. O resultado seria este:


    DOC   |  DATA  |  LOG_ALTERACAO  |  ORDEM
    0010  |  01/05  |  000101               |  1
    0010  |  01/05  |  000102               |  2
    0012  |  01/05  |  000110               |  1
    0012  |  02/05  |  000117               |  2
    0012  |  04/05  |  000121               |  3
    0013  |  04/05  |  000113               |  1
    0014  |  04/05  |  000116               |  1

    Esta rotina seria feita semanalmente e a tabela é superior a 100.000 registros, razão pela qual outra solução dada neste fórum (https://www.maximoaccess.com/t12939-resolvidocontador-em-consulta) não atendeu.

    Alguém conhece alguma solução?

    Abraços a todos
    Demitrius Luz
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    Atualizar tabela com nro sequencial baseado em dois critérios Empty Re: Atualizar tabela com nro sequencial baseado em dois critérios

    Mensagem  Alexandre Neves 5/2/2017, 11:49

    Boa tarde, e bem-vindo ao fórum
    É sempre bom disponibilizar dados para se trabalhar
    Não utiliza nomes reservados do Access em campos, variavaies, etc

    Veja se atende
    Código:
    Sub ActualizaOrdem()
        '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        '  código criado por Alexandre Neves, do Fórum MaximoAccess                                                '
        '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        Dim Rst As DAO.Recordset
        Set Rst = CurrentDb.OpenRecordset("SELECT Doc, Data, Log_Alteracao, Ordem FROM SuaTabela ORDER BY Doc, Data, Log_Alteracao")
        Do While Not Rst.EOF
            Rst.Edit
            Rst("Ordem") = Rst.AbsolutePosition + 1
            Rst.Update
            Rst.MoveNext
        Loop
        Set Rst = Nothing
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

      Data/hora atual: 26/4/2024, 16:08