MaximoAccess

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

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    RicoInside
    RicoInside
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 01/11/2012

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    Mensagem  RicoInside em 4/11/2012, 12:43

    Olá Pessoal!

    Meu primeiro tópico, portanto moderadores, me desculpem se estou fazendo alguma coisa errada e me corrijam!

    Bom, antes de mais nada esse fórum é excelente, me ajudou muito, muito mesmo!!! Estou grato pelas inúmeras enrascadas que os moderadores e foristas já me tiraram!!! Enrascadas profissionais mesmo e não coisa sem importância...

    Para tentar retribuir um pouquinho só as inúmeras coisas que aprendi por aqui, postarei esse exemplo importantíssimo e muito interessante que também me livrou de bons apuros!!!

    Moderadores, não consegui achar nada parecido aqui no fórum, portanto se já existir esse tópico, novamente desculpe, pois sou iniciante no fórum, ok?

    OBS: Usei o Google Translate e portanto tem muita coisa "estranha" na tradução, mas dá para entender perfeitamente, qualquer duvida veja o original no link dos créditos, certo?!
    =================================================================================

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access

    Creditos: http://www.fmsinc.com/microsoftaccess/forms/synchronize/linkedsubforms.asp
    Fornecido por: Lucas Chung e John Litchfield

    Banco de Dados Exemplo: LinkingTwoSubforms.zip

    Microsoft Access torna fácil de ver registros relacionados em formulários. Uma forma de acesso simples tem uma fonte de registro exibir dados de uma tabela ou consulta. A forma pode ser mostrado em:

    • Formulário simples mostrando um registro com cada campo formatado e alinhado exatamente onde você gosta
    • Formulário contínuo, onde cada campo é formatado e alinhado como a única forma, mas vários registros são exibidos à altura do formulário
    • Datasheet que exibe todos os registros, como visualizar uma tabela

    Usando o Microsoft Access Subformulários

    Uma das características mais poderosas de visualização de dados é a utilização de subformulários. Um subformulário é um formulário com a sua própria fonte de dados que está incorporado em outro "mestre" do formulário.

    Subformulários fornecer uma poderosa forma de ver facilmente os dados relacionados, relacionamentos especialmente um-para-muitos, sem escrever código.Acesso filtra automaticamente os dados no subformulário baseado em dados do formulário mestre. Isto é conseguido através da criação dos Campos Master Link e Campos link Propriedades filho de um subformulário.

    • O Campo Master é o nome do controle sobre a forma principal que o subformulário é filtrada em
    • O Campo A criança é o nome do campo (não o controlo) no subformulário
    No banco de dados da amostra, o frmSimple forma mostra um exemplo onde OrigemDosRegistos a forma é a tabela mestre (tblMaster) eo subformulário (subDetail) exibe seus registros correspondentes:

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. LinkedForm-Simple

    O subformulário exibe apenas os registros para um valor no campo MasterID. Para fazer isso, nós:

    1. Renomeie o controle para o campo MasterID para txtMasterID. Isso diferencia entre referenciando o controle ou o campo subjacente. Nós queremos fazer referência ao controle.
    2. Atribuir este controle para o subformulário propriedade Link Campos Mestre
    3. Atribua ao campo de origem de registro do subformulário, MasterID, para o Link propriedade Fields Criança

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. LinkMasterChildFields
    Exemplo de configuração do link Mestre e Campos Criança ligação

    Para situações em que você deseja filtrar em mais de um campo, os Campos Master Link e Campos Criança ligação pode conter valores separados por ponto-evírgula. Basta combinar-los na ordem desejada.

    Campos Master Link Referência controles em vez de nomes de campo

    Como um hábito, deve-se sempre consultar o nome do controle, em vez de o nome do campo para o campo Link Master. Para mais informações, leia o Microsoft Access Subformulários Campos Master Link.

    Ligando Dois Microsoft Access Subformulários Juntos

    E se você quiser mostrar uma lista dos registros "mestres" e os registros detalhes correspondentes do registro mestre atual?

    Por exemplo, você pode querer mostrar todos os registros mestre e com o usuário se move através da lista, os registros correspondentes aparecem no subformulário detalhe:

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. LinkedSubforms

    Felizmente, você pode facilmente fazer isso, apenas com a criação de algumas propriedades sem escrever qualquer código VBA!

    Para isso, criamos um formulário desacoplado (sem registro de origem) e colocamos dois subformulários nele (veja o formulário frmParent no banco de dados de exemplo).

    O primeiro subformulário (frmMaster) é a lista de registros mestre, e o segundo (frmDetail) contém os detalhes.

    Nós sincronizar os subformulários usando as propriedades dos Link’s dos campos FILHO e MESTRE do subformulário detalhes. Acho que é frmDetail.

    *Um subformulário não pode se linkar nos campos em um subformulário de seu pai!

    Em um ambiente normal de contrução de subformulário, as propriedades do campo Master Link seriam baseadas em um controle no formulário principal.

    No cenário de DOIS subformularios, o segundo subformulário é filtrado sobre um valor no primeiro subformulário.

    Infelizmente, as propriedades de campos no subformulário Master Link não pode diretamente referência a um campo do primeiro subformulário. Ela só pode fazer referência a um campo em seu formulário pai.

    Solução
    Felizmente, há uma solução simples. Criar uma caixa de texto intermediário no formulário principal para o valor LinkMaster. Este referências do registro atual no subformulário mestre, então o subformulário detalhe pode vincular a esse valor. Ao fazer esse controle invisível, seus usuários não verão este link!

    Para fazer referência a um valor em um subformulário, use a seguinte sintaxe para a caixa de texto de propriedade de controle de origem:

    = [SubFormName]. [Form]! [ControlName]

    onde subFormName é o nome do seu controle mestre (Pai) subformulário e ControlName é o nome do seu controle que os registros de detalhes são filtrados.

    No banco de dados da amostra, esta torna-se:

    = [Submaster]. [Form]! [TxtID]

    Agora que o valor principal é mostrado, nos chamamos este controle de 'txtMasterID' e usámos ele como o Campo Master Link para o segundo subformulário.

    *É bom manter esta caixa de texto visível enquanto você projetar e testar o formulário. Uma vez que ele está funcionando, defina sua propriedade Visible para “Não” para que seus usuários não vejam a mágica que você criou!
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11228
    Registrado : 30/12/2009

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Re: Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    Mensagem  criquio em 4/11/2012, 13:12

    Olá! O fórum agradece a contribuição. Só mudei-o de sala, uma vez que a sala aonde estava está no grupo de salas para postagem de dúvidas.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    dantd
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 28/05/2012

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Obrigado!

    Mensagem  dantd em 31/5/2013, 23:51

    Esta contribuição me ajudou muito!!! Muito Obrigado!
    avatar
    berlengueiro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 1
    Registrado : 13/08/2013

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Re: Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    Mensagem  berlengueiro em 30/6/2014, 12:05

    Muito obrigado pela ajuda.
    avatar
    SGQLadyTex
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 26/05/2015

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Re: Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    Mensagem  SGQLadyTex em 18/6/2015, 15:26

    Show de bola! Tenho um form que cadastro um pedido de venda, e mais dois subforms, um com a lista geral dos pedidos (ao lado) e outro com os produtos do pedido (abaixo). Com essa ferramenta que vi agora, vou conseguir deixar a tela de pedidos do jeito que preciso.

    Muito obrigado pela dica e Deus os abençoe.

    Conteúdo patrocinado

    Sincronizar dois subformulários relacionados em um formulário do Microsoft Access. Empty Re: Sincronizar dois subformulários relacionados em um formulário do Microsoft Access.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 15/11/2019, 01:12