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

    [Resolvido]Relatório - Problemas na ORDEM

    avatar
    Lamcarter
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 36
    Registrado : 29/06/2013

    [Resolvido]Relatório - Problemas na ORDEM Empty [Resolvido]Relatório - Problemas na ORDEM

    Mensagem  Lamcarter Sex 15 Ago 2014 - 22:07

    Galera, mais uma vez recorro a vocês para me auxiliarem em um problema no meu BD.

    Olhem o que acontece e se puder, me ajudem, os dados que seguem são apenas exemplo:

    Tenho um BD, onde na tabela de "Cadastrodefuncionário"
    tem as seguintes colunas: codigofunc; nomefunc; dataentrada;datasaída e outros vários....

    Tenho um formulário e nesse formulário uma caixa de listagem onde relaciono os funcionários ativos:

    Para relacionar apenas os funcionários ativos, fiz uma consulta e na propriedade da caixa de listagem, na aba dados, opção "Origem da Linha" tenho a seguinte linha de comando:

    SELECT [ConsultaFuncAtivos].[Nomefunc] FROM ConsultaFuncAtivos ORDER BY [Nomefunc];

    a lista funciona perfeitamente.

    Quando clico no nome do funcionário, os dados do registro do funcionário selecionado são buscados na tabela e mostrados em outros campos no formulário, para eventual alteração. Para isso, na caixa de listagem, aba evento, opção "Após Atualizar", tenho uma macro, com as seguintes linhas:

    Private Sub Lista64_AfterUpdate()

    Dim rs As Object

       Set rs = Me.Recordset.Clone
           rs.FindFirst "[Nomefunc] = '" & Me![Lista64] & "'"
           If Not rs.EOF Then Me.Bookmark = rs.Bookmark
    End Sub


    Até a presente data tudo funcionava perfeitamente, até ocorrer a seguinte situação.

    Exemplo, um funcionário, chamaremos de Tício, entra na empresa em 01/01/2000 e sai em 31/12/2011, o cadastro dele recebe o "codigofunc" nº 10.

    Por qualquer questão, o Tício volta a trabalhar na empresa, entra em 01/01/2014 e está trabalhando. Assim, cadastrado novo, agora em 2014 recebe o "codigofunc" nº 250.

    o que está acontecendo, na caixa de listagem, aparece somente um nome para Tício, porém quando ele é selecionado aparece os dados do registro nº. 10, com dados desatualizados e não os novos dados cadastrados no registro 250.

    Não sou expert em VBA, sou meio que autodidata e auxiliado pelos Fóruns da vida. Obrigado a todos.

    Assim, pelo pouco que entendo essa macro que tenho na aba evento deveria trazer os registros da consulta, porém como direcioná-la.

    Gostaria de uma ajuda,

    desde já agradeço a atenção.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relatório - Problemas na ORDEM Empty Re: [Resolvido]Relatório - Problemas na ORDEM

    Mensagem  Noobezinho Sex 15 Ago 2014 - 23:27

    Olá Eliezer

    Entenda que o Findfirst, como o próprio nome diz, vai encontrar o primeiro registro que atenda ao critério pedido.

    Então eu entendo o seguinte, numa tabela, nunca se deve ter mais de um registro de uma mesma pessoa ou registro duplicado.
    Digamos que essa pessoa sai da empresa e retorne outras vezes, não importando o motivo, quantos registros teremos
    dela na tabela?
    Pensando assim, sugiro o seguinte:
    Mantenha numa tabela os dados imutáveis da pessoa, como nome, endereço, bairro, cariteira,prof, cpf, etc...
    E em outra tabela os dados pertinente ao emprego dele, tais como, data de inicio, data de saida, cargo.
    Isso teria uma relação de tabelas de 1 para muitos.
    E poderá depois, exibir os dados desses empregados num formulário principal e os demais dados num subformulário.
    Idem para o relatório.
    Ficará algo apresentável de de fácil manipulação de dados.

    Abraços

    Nb


    .................................................................................
    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...
    avatar
    Lamcarter
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 36
    Registrado : 29/06/2013

    [Resolvido]Relatório - Problemas na ORDEM Empty resolvido

    Mensagem  Lamcarter Sex 15 Ago 2014 - 23:38

    realmente, obrigado pela informação.

    Vou providenciar as mudanças.

    Atenciosamente,
    Eliezer
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relatório - Problemas na ORDEM Empty Re: [Resolvido]Relatório - Problemas na ORDEM

    Mensagem  Noobezinho Sex 15 Ago 2014 - 23:44

    Valeu pelo retorno

    Qualquer coisa estamos aqui.

    Boa sorte


    Nb


    .................................................................................
    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...

      Data/hora atual: Seg 12 Abr 2021 - 0:51