MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

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

    Abrir formulário e mostrar dados específicos

    avatar
    rmjsantos
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 31/10/2014

    Abrir formulário e mostrar dados específicos Empty Abrir formulário e mostrar dados específicos

    Mensagem  rmjsantos em 27/1/2020, 21:36

    Olá a todos,

    Desde já as minhas desculpas por estar novamente com mais uma questão, mas é que não sei o que estou a fazer mal e apelo, por favor, à vossa ajuda.
    Então é o seguinte:

    Tenho um formulário(f_Colaboradores) onde insiro os dados do colaborador, e tenho outro formulário (f_FichaPessoal), onde insiro os dados pessoais dos colaboradores.
    O que pretendo é que no f_Colaboradores ao inserir o dados de um colaborador, ao clicar num botão abra o f_FichaPessoal e mostre os dados desse mesmo colaborador, onde depois insiro os restante dados pessoais, e assim sucessivamente para todos os colaboradores que inserir.


    Exemplo:

    Nii: 12345678 abrir os dados no f_FichaPessoal deste Nii
    Nii: 98765432 abrir os dados no f_FichaPessoal deste Nii mas noutro registo, e assim sucessivamente.

    Pesquisei aqui no fórum, e tirei um exemplo que apliquei no botão;

    Private Sub BtFichaPessoal_Click()
    If Len(Me!Nii & "") = 0 Then
       Me!Nii.SetFocus
       Exit Sub
    End If
    DoCmd.RunCommand acCmdSaveRecord
    DoCmd.OpenForm "f_FichaPessoal"
    Forms!f_FichaPessoal.Nii.Value = Me.Nii.Value
    Forms!f_FichaPessoal!Morada.SetFocus
    End Sub

    O problema que está a acontecer, é que assim que insiro o primeiro registo do f_FichaPessoal de um determinado colaborador, depois abre sempre o mesmo registo mas com a identificação de outro colaborador, e dá erro.

    Insiro a bd para se for possivel, me possam ajudar a solucionar este problema.

    Obrigado e um Bem Haja a todos.
    Anexos
    Abrir formulário e mostrar dados específicos AttachmentSecretaria.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (456 Kb) Baixado 13 vez(es)
    avatar
    renpv
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 323
    Registrado : 12/01/2015

    Abrir formulário e mostrar dados específicos Empty Re: Abrir formulário e mostrar dados específicos

    Mensagem  renpv em 27/1/2020, 21:54

    Troque seu código por esse:
    Código:
    Private Sub BtFichaPessoal_Click()
    If Len(Me!Nii & "") = 0 Then
        Me!Nii.SetFocus
        Exit Sub
    End If
    DoCmd.RunCommand acCmdSaveRecord
    DoCmd.OpenForm "f_FichaPessoal", , , "Nii = '" & Me.Nii & "'"
    End Sub
    De antemão aviso que seu formulário de FichaPessoal está baseado em uma consulta que retorna apenas um registro. Sendo assim, o colaborador de Nii 987456321 terá sua ficha aberta normalmente mas os outros não.
    O ideal seria formulários baseados em tabelas.
    avatar
    rmjsantos
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 31/10/2014

    Abrir formulário e mostrar dados específicos Empty Re: Abrir formulário e mostrar dados específicos

    Mensagem  rmjsantos em 27/1/2020, 22:45

    Obrigado renpv
    Alterei o código como sugeriu, só que ao abrir com novo colaborador, o Nii desse colaborador não aparece na ficha pessoal.
    Dá para contornar esta situação?
    Como faço para ter o formulário baseado na tabela, como tinha sugerido?
    Ao fazer isso não tenho de estar a registar novamente o Nii no f_FichaPessoal?
    O que pretendia era mesmo quando introduzisse um Nii no f_Colaboradores ele aparecesse no f_FichaPessoal.
    Tem como fazer isso?

    Obrigado mais uma vez pela sua ajuda.
    avatar
    rmjsantos
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 31/10/2014

    Abrir formulário e mostrar dados específicos Empty Re: Abrir formulário e mostrar dados específicos

    Mensagem  rmjsantos em 28/1/2020, 10:36

    Bom dia
    Seguindo a sugestão do renpv, para fazer o que pretendo, tenho então de juntar os campos da t_FichaPessoal com a t_Colaboradores. É assim?
    Se sim, não ficará a tabela com imensos campos?
    Podiam dar uma sugestão como a melhor maneira de fazer o que pretendo?
    Obrigado.

      Data/hora atual: 24/9/2020, 06:20