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

4 participantes

    [Resolvido]Relacionamento um pra um

    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Relacionamento um pra um

    Mensagem  julianovv 21/9/2011, 15:43

    Boa tarde!
    Tenho uma tabela com mais de 100 itens e quero dividi-la em 3 fazendo a separação dos itens e criando nomes relativos a esses itens. Tipo, tudo que for contato vai para a tabela Contatos.
    Mas preciso que elas tenham relacionamento um pra um. Tem jeito isso?
    Lembro que tentei uma vez relacionando todas pela chave primária e elas não editaram. Ficaram bloqueadas.
    Obrigado!

    Rolling Eyes
    le_lo28
    le_lo28
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 233
    Registrado : 13/07/2011

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  le_lo28 21/9/2011, 18:12

    Fala juliano blz?

    Seria mais fácil vc postar o nome das tabelas q vc quer criar e o campo que identifica cada uma delas para que possamos ajudá-lo.

    No aguardo,

    Marcelo
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 21/9/2011, 20:27

    Tentei enviar uma imagem da tabela mas ela ficou grande e não passou.
    Tem email pra que eu possa enviar?

    Wink
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7305
    Registrado : 11/05/2010

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  vieirasoft 21/9/2011, 20:31

    Amigão

    procure um email de um moderador.

    sergiovieirasoft@gmail.com
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 21/9/2011, 20:52

    Ok, faço um detalhamento escrito amanhã. A imagem de 600 x 400 pixeis ficou microscópica.
    Obrigado!

    Rolling Eyes
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 22/9/2011, 14:14

    Bom dia! Segue a tabela Geral e as futuras tabelas utilizadas para o relacionamento um pra um

    Tbl_Geral

    (Esta tabela é resultado da consulta-tabela que criei para unir todas as consultas que já existiam)

    Tbl_Funcionarios
    CodNome - Número (auto-numeração na tabela final, Tbl_Funcionários)
    CodNome1 - Número (da segunda tabela, Tbl_DadosCadastrais)
    CodNome2 - Número (da terceira tabela, Tbl_Contatos)
    Nome - texto
    Sobrenome - texto
    Modo - texto
    DataNas - data/hora
    Sexo - texto
    setor_pro - Número (recebe o código do setor da Tbl_Setores)
    subsetor-n - Número (recebe o código da Tbl_SubSetores))
    local-n - Número (recebe o código da Tbl_Local)
    maq - texto (número do computador do funcionário)
    coordenador-n - Número (recebe o código da Tbl_Coordenadores)
    peso - Número (valor do peso das horas dos funcionários)
    password - Número (número de 6 dígitos calculado aleatoriamente para inserir a senha do funcionário para acesso na rede)
    desativado - Sim/Não (oculta o funcionário do sistema sem exclui-lo)
    foto - Objeto OLE (fotografia do funcionário)
    saiu - Sim/Não
    obs_pro - Memorando (observações adicionais sobre o funcionário)

    Tbl_DadosCadastrais
    identidade - Texto
    CPF - Texto
    PIS - Texto
    titu_eleitoral - Texto
    zona - Texto
    seção - Texto
    RG - Texto
    serie - Texto
    emissao - Texto (máscara de data: 00/00/0000)
    naturalidade - Texto
    fili_mae - Texto (nome da mãe)
    fili_pai - Texto (nome do pai)
    est_civil - Texto (estado civil)
    ndepen - Texto
    grau_instr - Texto
    EPS - Texto
    ECS - Texto
    CNPJ - Texto (máscara de entrada para CNPJ)
    responsavel - Texto (nome do responsável pelo serviço contábil do funcionário)

    Tbl_Contatos
    endereco - Texto
    bairro - Texto
    cidade-n - Número (recebe o código da Tbl_Cidades)
    estado - Texto (com regra de validação para somente 2 digitos)
    CEP - Texto (com máscara de entrada para cep, 00000-000)
    email - Hiperlink
    site - Hiperlink
    tel_re - Texto (máscara para telefone: 0000-0000)
    tel_cel - Texto (máscara para telefone: 0000-0000)

    Tbl_Admissao
    funcao - Texto
    hor_tra - Data/Hora (Horário de entrada, máscara de horas: 00:00)
    hor_tra_as - Data/Hora (Horário de saída, máscara de horas: 00:00)
    alm_sai - Data/Hora (Saída do almoço, máscara de horas 00:00)
    alm_volta - Data/Hora (Volta do almoço, máscara de horas 00:00)
    ramal - Texto
    mao_obra - Texto
    galpao_sala - Texto
    telefone_local - Texto (máscara para telefone: 0000-0000)
    n-registro-fiasa - Texto
    dep - Texto
    ref_tec-n - Número (recebe o código da Tbl_ReferenteTécnico)
    centro_custo - Número
    admissao - Data/Hora (máscara de entrada 00/00/0000)
    inicio_prestacao - Data/Hora (máscara de entrada 00/00/0000)
    obs-admissao - Texto
    registro - Texto
    contrato - Texto
    nome_empresa - Texto
    registrado - Sim/Não
    contcliente-n - Número (recebe o código da Tbl_ContatoCliente)
    salario_base - Unidade Monetária
    tipo_transporte - Texto
    alimentacao - Texto
    plano_medico - Texto
    periodo_exame_medico - Texto
    per_exmedico_mes - Data/Hora (máscara de entrada 00/00/0000)
    n-registro-livro - Texto
    banco-n - Número (recebe o código da Tbl_Bancos)
    n-conta - Texto
    agencia - Texto
    duplicados - Sim/Não
    obs_dados - Memorando (observações sobre os dados cadastrais)
    data_acesso - Data/Hora (marca a data e hora da criação de um novo registro)

    Ps. Os campos reduzidos e sem acentuação são corrigidos nas propriedades na legenda com o nome real.
    A separação pelo nome das tabelas é para definir melhor quais campos serão separados. Codigos de autonumeração e Codigo do Funcionário (CodNome) são os primeiros da tabela.


    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  Dilson 22/9/2011, 22:35

    Quantos registros existentes na tbl_Geral?
    Qual a versão do access?
    le_lo28
    le_lo28
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 233
    Registrado : 13/07/2011

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  le_lo28 23/9/2011, 12:40

    Olá!

    Eu não sei qual a sua necessidade, mas olhando as tabelas porque vc quer separar os dados em 3 tbls sendo que pelo que entendi pertencem a um mesmo registro? A não ser a tbl de contatos que poderia ter mais de um.

    Falow,

    Marcelo
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 23/9/2011, 13:01

    Bom dia. São 81 campos. Uso o Access 2003.
    Na relação que passei, a tbl Geral são todos esses campos. O que fiz foi separar os campos que seriam das outras tabelas para mostrar quais tabelas seriam relacionadas em um pra um.

    Wink
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  Dilson 23/9/2011, 13:11

    Sim 81 campos.

    Mas, quantos são os registros inseridos até o momento?
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 23/9/2011, 13:20

    O objetivo da separação é porque além de grande, em torno de 400 registros, ela possui muito texto e está em rede que não é lá essas coisas. A rede é cheia de falhas e dá muito erro na abertura do banco.
    Entendo que uma tabela grande quanto mais dividida for, melhor é o desempenho na rede.
    A grande maioria dos usuários que possuem cadastro nesta lista utilizam a rede para acessar esses dados.

    Rolling Eyes
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 23/9/2011, 13:26

    São 350 registros de funcionários sendo que 200 são ativos. Até onde sei esta tabela não tem mudado já tem um bom tempo. Acho que é a crise...rsrs
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  Dilson 23/9/2011, 13:34

    Ok.

    poucos dados.

    Veja a solução que postei neste tópico:
    [Resolvido]Redefinir relacionamento autopreenchendo chave primaria da outra tabela

    Dará pra adaptar e fazer o que pretende.

    Faça filtro por seleção na Tbl_Geral pelos registros que tornarão a nova tabela. De seguida copie os registros correspondente e cole na nova tabela. Daí implemente o exemplo substituindo o campo cpf pelo do registro selecionado que preencherão a chave estrangeira com o n° da chave primária da Tbl_Geral.

    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 23/9/2011, 15:41

    Obrigado pela dica. Eu vi seu arquivo.
    No geral vou explicar o que pretendo. Existem 2 tabelas de funcionários. Uma está na rede e sendo usada pelos setores. Outra está no RH e deveria ser utilizada para atualizar a tabela da rede mas isso ainda não aconteceu e é essa a minha batalha no momento. A tabela no RH possui informações que na da rede não possui, então não é o caso apenas de criar nova tabela. Seria muito simples.
    O que fiz foi unir as duas que virou a tbl Geral que mostrei acima. Como a da rede é a mais atualizada porque é acessada diariamente, me baseei toda a informação nela para atualizar a do RH para poder depois criar o relacionamento que não poderia ser pelo código pois será recriado.
    Mas nem tudo são flores pois só existe o campo Data de Nascimento (datanas) que usei para relacionar as tabelas. Me retornou vários campos em branco e a atualização dos códigos iria resultar em erro. Da mesma forma aconteceria com o CPF que também poderia ser relacionado mas cada um digita da forma que prefere e iria ter muito erro. A data de nascimento é a mais segura pois não tem como errar. Tem máscara de entrada e o campo é baseado na data e hora do computador.
    A organização da tabela vai implicar em mudança do código que é automático e cada usuário utiliza para acessar seu apontamento de horas junto com a senha de acesso à rede (password)
    A tabela Geral está relacionada pela data de nascimento mas somente dos funcionários que possuem esse campo preenchido nas duas tabelas.

    Rolling Eyes
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Relacionamento um pra um Empty Re: [Resolvido]Relacionamento um pra um

    Mensagem  Dilson 24/9/2011, 12:23

    Oi.

    Ficou um pouco confuso o entendimento.

    Simplesmente dividir os dados em tabelas e propor um relacionamento é de fato que não dará certo. Agora, se criares as novas tabelas, relacionar e em seguida colar os dados. Assim, pode dar certo.

    A sugestão de colagem deve-se aos poucos dados existentes.

    Cerca de 350 registros para distribuir, não chegariam a 1 hora de tarefa. Claro, desde que criasse as novas tabelas com as chaves primárias, estrangeiras e relacionamentos devidamente definidos. Daí era só partir para a colagem utilizando preferencialmente o Access 2007 que facilita mais esta ação nas tabelas.

    Uma informação importante seria:

    No conjunto das novas tabelas citadas acima, quem se relaciona com quem?

    Ficará mais fácil compreender a redistribuição de dados proposta.


    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 26/9/2011, 17:40

    Mais tarde te envio uma imagem da consulta mostrando o que pretendo. Estou no trabalho e aqui é cheio de papagaio de pirata..rsrs

    Laughing
    julianovv
    julianovv
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 638
    Registrado : 14/12/2010

    [Resolvido]Relacionamento um pra um Empty Re: Relacionamento um pra um

    Mensagem  julianovv 29/9/2011, 02:13

    Já consegui resolver. Algumas tabelas ficaram no relacionamento um-pra-muitos porque permite a criação de novos registros. As outras usei a propriedade no formulário tornando o ciclo da tecla tab somente para este registro. Desta forma não permite abrir novo registro. Assim ela torna um-pra-um.
    Obrigado pela ajuda!

    Wink

      Data/hora atual: 22/1/2022, 18:26