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


3 participantes

    [Resolvido]Relacionamento entre tabelas

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Relacionamento entre tabelas

    Mensagem  OLDRIVG Ter 17 Jul 2012, 07:50

    Prezados do forum, bom dia.

    Estou criando um BD em access 2010 ( o primeiro que construo nesta versão) e não estou acertando o relacionamento entre as tabelas para que os registros apareçam no formulário. Andei pesquisando no forum mas não consigui assimilar as orientações ali encontradas. Assim, recorro-me aos senhores.

    A situação é a seguinte: criei uma tabela única para o BD. Mas como ficou faltando campos e ñão foi possivel criá-los na tabela, tive que dividir a tabela em 4 outras. Assim, foram criadas as tabelas Tbl_ACOES, Tbl_ASSOCIACAO, Tbl_FUNCIONAL e a Tbl_PESSOAL. Agora estou tentando fazer o relacionamento entre elas para que eu possa estar criando um formulário único para entrada dos dados nas 4 tabelas. Os relacionamentos que crio não funcionam, pois os dados não aparecem no formulário.

    Alguém poderia me dar uma ajuda? Estou disponibilizando o prototipo do BD (access 2010)para ilustrar.
    Desde já agradeço.
    Anexos
    [Resolvido]Relacionamento entre tabelas AttachmentPROTOTIPO CADASTRO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (87 Kb) Baixado 40 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Convidado Ter 17 Jul 2012, 22:12

    Olá,

    Salva o bd na versão 2003/2007 e disponibiliza novamente.


    Nivaldo Aguiar
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Silvio Ter 17 Jul 2012, 22:40

    Olá, boa noite.

    Veja o anexo.

    Toda tabela principal tem um campo chamado Chave primária ou Primary Key. É através dela que fazemos todos os relacionamentos entre as tabelas. Então, temos a tabela principal, no seu caso pelo que eu vi é a tbl_cadastro_pessoal.

    Note que nela eu alterei a chave primária, antes ela estava como um número digitado, agora ela está no automático. Nas outras tabelas também há o IDAfiliado. Note que nessas tabelas ele esta apenas como número. Nessas tabelas ele é considerado como chave estrangeira, pois está ligado a tabela principal.

    Bons estudos para ti.

    Abraços.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Ter 17 Jul 2012, 23:31

    Olá Sílvio. Boa noite.
    Agradeço-lhe pela a atenção. Surgiu uma dúvida após a mudnça que você fez nos campos
    Necessariamente o campo com chave primária tem que ser numeração automática? Estou perguntando porque nesse campo IdAssociado eu pretendia utilizar o código

    Me![IDAfiliado].DefaultValue = Nz(DMax("[IDAFILIADO]", "tbl_CADASTRO_PESSOAL"), 0 + 1

    para gerar o número de registro no lugar da autonumeração do access.
    A chave primária não poderia ser no campo NomeDoAssociado uma vez que ele não poderá ter dados duplicados?

    Prezado Nivaldo, segue BD versão access 2003. Obrigado a você também pela a atenção .
    Agradecendo.


    Anexos
    [Resolvido]Relacionamento entre tabelas AttachmentPROTOTIPO CADASTRO 2003.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (42 Kb) Baixado 20 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Alexandre Neves Qua 18 Jul 2012, 04:29

    Bom dia, Old

    O campo chave primária não precisa ser numeração automática.
    Não cria chave primária no nome. Existem muitas pessoas com o mesmo nome. Se aparecer um primeiro caso?
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Silvio Qua 18 Jul 2012, 07:41

    Um bom dia para todos.

    Certamente, a chave primária não precisa ser necessariamente automática. Mas para que complicar, se ela pode ser automática ? Quanto mais automatização melhor, assim podemos nos ater a outros fatos dentro de nossos projetos.

    Quanto ao nome ser uma chave primária, o Alexandre está correto. Já imaginou quantas pessoas poderão a ter o mesmo nome e sobre nome em seu projeto ? Por isso que é bom ter a chave primária como um número, pois ele será único para aquele que está cadastrado nele e o acompanhará durante toda a existência do seu banco.

    abraços.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Qua 18 Jul 2012, 08:53

    Bom dia senhores.

    Ok.
    Vou mudar a chave primária para um campo numérico existente nas tabelas e naquelas que não existir, criarei, correto? E estes campos poderão ser ocultos no formulário?

    Prezado Silvio, a dificuldade que vejo na numeração automática do access é que não se pode fazer qualquer alteração.

    Agradeço aos senhores pela ajuda. Vou alterar as tabelas, criar os formulários e ver o que acontece.
    Obrigado a todos.
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Silvio Qua 18 Jul 2012, 09:13

    Bom dia OLD.

    Pode ser oculta sim, não há problema algum nisso.

    Mas sinceramente, eu não estou a entender o porque de alterar a chave primária, pois é ela quem identifica,quem faz as ligações entre as tabelas, ela é única.

    Mas quem está tocando o projeto você e acredito que você tenha os seus motivos.

    Abraços a ti...e um ótimo trabalho !

    Silvio


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Qua 18 Jul 2012, 11:32

    Prezados,
    infelizmente não consegui sucesso no que eu pretendia. Ou seja, relacionar as tabelas e criar um formulário com os campos das tabelas relacionadas em controle guia.

    O relacionamento foi feito mas no entanto quando crio o formulário e insiro os campos de qualquer das tabelas em questão, os campos não ficam visiveis no formulário quando em modo formulário. O que posso estar a fazer de errado? Alguém teria uma sugestão?
    Agradecendo, fico no aguardo.

    Prezado Silvio,
    Tentei criar o formulário usando o BD que você alterou o relacionamento e postou mas não deu. Estou postando o mesmo BD porém com o formulário Frm_CADASTRO criado. Mas não aparecem os campos no modo formulário mas no modo design os campos estão lá.
    Se alguém se dispuser a dar uma avaliada e sugerir alguma solução, fico grato.
    Anexos
    [Resolvido]Relacionamento entre tabelas AttachmentPROTOTIPO CADASTRO_1.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (67 Kb) Baixado 19 vez(es)


    Última edição por OLDRIVG em Qua 18 Jul 2012, 16:03, editado 1 vez(es) (Motivo da edição : Anexando BD)
    avatar
    Convidado
    Convidado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Convidado Qui 19 Jul 2012, 12:52

    Bom dia,

    Algumas perguntas para poder lhe ajudar:

    1)Qual é ou vai ser a principal tabela de seu bd?? Ações, processos, cadastro de pessoas??
    2)Porque na tabela Tbl_CADASTROS_ACOES tem campos que se repetem em até 10 vezes??
    3)Porque não criar uma tabala para DEPENDENTES (Tbl_CADASTRO_ASSOCIACAO)??

    Estou fazendo essas perguntas porque acho (ao meu ver) que você poderia desmembrar melhor todas as informações que você deseja manipular/armazenar criando mais algumas tabelas. Acho ainda que talvez a modelagem de dados não esteja correta.

    Até tentei alterar as tabelas, más sem saber qual é realmente o norte que você precisa fica um pouco difícil.

    Faz uma busca por Modelagem de Dados aqui no forum. Você vai encontrar material muito bom para esturturar melhor o seu bd.


    Nivaldo Aguiar
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Sex 20 Jul 2012, 09:11

    Bom dia prezado Nivaldo.
    Agradecendo a sua atenção vamos às respostas.

    1 - A tabela principal será Tbl_CADASTRO_PESSOAL;
    2 - Os campos na Tbl_ACOES não são repetidos. Observe que os nomes mudam (NomeDaAcao1, NomeDaAcao2 e assim sucessivamente até NomeDaAcao10). A razão dos campos é que para cada registro será lançado os dados de 10 açoes diferentes e cada ação deverá conter seu dados identificatórios e demais informações. Estas ações são ações judiciais. Por isto a existência de 10 campos, porém com nomes diferenciados por números.
    3 - Nada impede que sejam criadas mais tabelas. Desmembrei a tabela original, a qual tinha mais de 180 campos, porque seria necessário a criação de mais campos e chegou ao limite da tabela. E desmembrei em 4 tabelas por questão de comodidade. Mas pode sim criar mais tabelas. O único detalhe é que seja criado somente um formulário com controle guia e com 5 páginas.

    O formulário Frm_CADASTRO que está no BD não está pronto. Por isto os nomes dos rótulos dos campos estão iguais. Não mudei os nomes porque verifiquei que os campos não aparecem no modo formulário e para não perder tempo parei de mexer no mesmo até solucionar o problema.
    Agradecendo mais uma vez a sua atenção, fico no aguardo.
    avatar
    Convidado
    Convidado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Convidado Dom 22 Jul 2012, 22:47

    Olá OLD,

    Desculpa a demora em responder. Más vamos lá:

    Fiz algumas alterações (a grosso modo) em algumas tabelas e relacionamentos para ver se você consegue uma direção para seguir.
    Dá uma olhada no arquivo em anexo e vê se é isso que precisa.

    Nivaldo Aguiar
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Seg 23 Jul 2012, 12:20

    Olá Nivaldo. Boa tarde. Nada a desculpar.
    Agradeço a atenção.

    Seria isto sim o que eu preciso, mas vi que você retirou campos da tabela Tbl_ACOES e criou a tabela Tbl_DEPENDENTES. Até aí tudo bem.

    Mas veja bem o que acontece:
    é preciso que os campos da Tbl_DEPENDENTES sejam inseridos no FormPessoal na página Associação. Quando insiro referidos campos no FormPessoal, o Access retorna um aviso que vai mudar a fonte de registro do formulário e criar uma nova consulta e ao concordar, os campos do formulário desaparecem(não ficam visíveis no modo formulário).
    Outro detalhe: haverá algum problema em retornar os campos (NomeDaAcao2,NomeDaAcao2, etc)que foram retirados da tabela Tbl_ACOES? Eles são necessarios no formulário FormPessoal, na página Açoes.
    Agradecido.
    avatar
    Convidado
    Convidado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Convidado Seg 23 Jul 2012, 22:51

    Olá OLD,

    Acho eu que não é necessário colocar campos repetidos na tabela Tbl_CADASTRO_ACOES (mesmo diferenciando nome de campos - NomeAcao1, NomeAcao2, etc..) uma vez que você poderá identificar cada registro de ação pelo IDAfiliado. Basta cadastrar as ações informando o codigo do associado e você terá todas as informações que precisar.

    Veja no exemplo que estou lhe enviando. Analise e poste suas dúvidas.
    Tente fazer o mesmo com o cadastro de DEPENDENTES.

    Nivaldo Aguiar
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Ter 24 Jul 2012, 19:15

    Prezado Nivaldo, boa noite.
    Mais uma vez agradeço a sua atenção e empenho, no entanto não vou mais precisar de dividir a tabela original em várias porque o cliente aceitou diminuir os campos. Desta forma, será possível criar uma só tabela (tbl_GERAL) e um só formulário contendo controle guia com 5 páginas (Pessoal, Funcional, Associação, Ações 1 e Ações 2). Um só formulário o cliente achou mais funcional e versátil.

    Estive olhando o ultimo exemplo que você postou e, infelizmente, não era isto que eu precisava. Como citei no inicio do tópico, precisava criar um só formulário mas com dados das 4 tabelas e não um formulário para cada 3 tabelas tabela e um formulário com subformulário para a tabela ACOES.

    No BD apresentado ao cliente na versão do access 2003 (que aliás criei com a ajuda dos prezados do forum, com o que agradeço a todos), o layout é da forma de um formúlario para uma tabela, o que agradou ao cliente. Por isto, da forma que você sugeriu não seria aceito por parte do cliente, pricipalmente no que tange as ações (no BD apresentado não há necessidade de digitar numero ID da ação. A entrar no registro do associado já se vê todas as ações cadastradas e demais dados).

    Mas de qualquer forma, volto a agradecer-lhe pelo seu empenho, dedicação e prestabilidade disponibilizados. Seus exemplos servirão para futuros BD que poderão vir a serem criados.

    Um grande abraço e fechando o tópico.

    avatar
    Convidado
    Convidado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Convidado Ter 24 Jul 2012, 19:24

    Olá OLD,

    Obrigado pelo retorno. O Fórum agradece.

    Precisando, estamos aqui.


    Nivaldo Aguiar
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  OLDRIVG Ter 24 Jul 2012, 19:46

    Ok. Obrigado

    Conteúdo patrocinado


    [Resolvido]Relacionamento entre tabelas Empty Re: [Resolvido]Relacionamento entre tabelas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Qui 07 Nov 2024, 20:44