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

    [Resolvido]Como criar relacionamento tabelas por código?

    Mylton
    Mylton
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1011
    Registrado : 23/08/2010

    [Resolvido]Como criar relacionamento tabelas por código? Empty [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Mylton 16/9/2016, 21:37

    Boa noite.
    Li esse post...
    https://www.maximoaccess.com/t109-resolvidorelacionamento-de-tabelas-pelo-codigo-vba
    Mas apesar de estar como avançado e ser da área de saúde, meus conhecimentos são poucos nessa questão.
    Naquilo que to tentando criar, são necessárias muitas tabelas, conforme figura abaixo.

    https://www.dropbox.com/s/rmg63cj3ndze927/rela%C3%A7%C3%A3o.png?dl=0[/img

    Todavia, o access possui limite de relacionamento, que são 32 tabelas por Relacionamento, infelizmente, preciso "encaixar" mais algumas.
    E, talvez, por código, possa ter mais que isso.
    Por isso,
    Alguém teria um Beabá, tutorial de como se criar relacionamento entre tabelas via código?
    Obrigado.
    Gabriel Brunichaki
    Gabriel Brunichaki
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 11/12/2015

    [Resolvido]Como criar relacionamento tabelas por código? Empty Re: [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Gabriel Brunichaki 16/9/2016, 21:56

    Digamos que tu tenha uma tabela Livro (CodLivro, NomeLivro, EscritorLivro) e outra Escritor (CodAutor, NomeAutor) e quer relacionar o CodAutor da tabela Autor com o EscritorLivro da tabela Livro.

    Código:
    Sub fncCreateRelation()

        Dim db As DAO.DATABASE
        Dim rel As DAO.Relation
        Dim fld As Field
        
        Set db = CurrentDb

        Set rel = db.CreateRelation("Livro-Autor", "Escritor", "Livro", dbRelationUpdateCascade)
        Set fld = rel.CreateField("CodAutor")
        fld.ForeignName = "EscritorLivro"
        rel.Fields.Append fld
        db.Relations.Append rel
        
        db.Close
        Set db = Nothing
        
        Set rel = Nothing
        
        MsgBox "Relação criada!"
    End Sub

    Essa é a função que eu uso quando preciso, mas não sei se o fato de criar a relação pelo VBA vai possibilitar mais do que 32 relações... Testa aí e volta pra contar. Razz


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    Mylton
    Mylton
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1011
    Registrado : 23/08/2010

    [Resolvido]Como criar relacionamento tabelas por código? Empty Re: [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Mylton 16/9/2016, 22:19

    Gabriel
    Fiz um arquivo com sua dica.
    Mas onde coloco essa função?
    Anexos
    [Resolvido]Como criar relacionamento tabelas por código? Attachmentescritor.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (28 Kb) Baixado 16 vez(es)
    Gabriel Brunichaki
    Gabriel Brunichaki
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 11/12/2015

    [Resolvido]Como criar relacionamento tabelas por código? Empty Re: [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Gabriel Brunichaki 19/9/2016, 14:41

    Bom dia Mylton,

    A função que eu te passei vai ir em um módulo.

    Editei o seu arquivo e já adicionei o módulo Relacoes. Vai encontrar a função nele... Além disso, populei as tabelas com alguns dados fictícios. Lembre-se que o campo EscritorLivro, por ser uma chave estrangeira, deve ser no formato Número, e não Texto, como estava no seu arquivo.

    A função fncCreateRelation deve ser executada uma única vez para a relação Livro-Autor ser criada.

    Depois de executar a função, vá em FERRAMENTAS DE BANCOS DE DADOS > Relações > Todas as Relações e vai perceber que a relação foi criada...

    Não sei se isso te atende... Se precisar de alguma outra coisa, só falar.
    Anexos
    [Resolvido]Como criar relacionamento tabelas por código? Attachmentescritor.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (42 Kb) Baixado 31 vez(es)


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    Mylton
    Mylton
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1011
    Registrado : 23/08/2010

    [Resolvido]Como criar relacionamento tabelas por código? Empty Re: [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Mylton 19/9/2016, 22:04

    Ok
    Obrigado.
    Vou estudar.
    abs

    Conteúdo patrocinado


    [Resolvido]Como criar relacionamento tabelas por código? Empty Re: [Resolvido]Como criar relacionamento tabelas por código?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 22:22