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]Erro 3201 (registro relacionado em outra tabela)

    avatar
    Killerz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 06/09/2013

    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Killerz 7/2/2014, 11:28

    Pessoal, bom dia, tudo bem?

    Estou com o seguinte problema dessa vez, acho que é probleminha bobo... Mas aquele que nós nunca enxerga... Vamos lá.

    Quero guardar um histórico do que acontece com um aluno. Quando falta, quando está presente, porque faltou, etc. Para isso criei uma tabela simples, chamada Historico, contendo os campos Historico_Cod como chave primária. Historico_Cod_Aluno como chave estrangeira (essa vem da tabela "Alunos", o relacionamento foi feito entre as duas tabelas)  Historico_Data para guardar a data da falta. Historico_Situacao Para guardar o motivo da falta e, por fim, Historico_Observacao que seu nome já diz sua função.

    Sendo assim, criei um botão apenas para teste, fazendo a primeira entrada de dados na tabela.

    Código:

    Dim parametroCodigo as Integer
    parametroCodigo = 130 'Na tabela aluno existe um aluno com o codigo 130

    Dim dataFalta as Date
    dataFalta = "17/01/2014" 'inventei uma data só para teste

    Dim TBPrimeiroHistorico As Recordset
            Set TBPrimeiroHistorico = CurrentDb.OpenRecordset("SELECT Historico_Cod_Aluno, Historico_Data, Historico_Situacao, Historico_Observacao FROM Historico", dbOpenDynaset)
            
            TBPrimeiroHistorico.AddNew
            
            TBPrimeiroHistorico("Historico_Cod_Afast") = parametroCodigo
            TBPrimeiroHistorico("Historico_Data") = dataFalta
            TBPrimeiroHistorico("Historico_Situacao") = "Falta"
            TBPrimeiroHistorico("Historico_Observacao") = Empty
            TBPrimeiroHistorico.Update
            TBPrimeiroHistorico.Close

    Porém na linha do "TBPrimeiroHistorico.Update", da um erro dizendo que não é possível a inclusão porque precisa de um registro relacionado na tabela Aluno... E não faço idéia de como identificar que o "parametroCodigo" é um registro da tabela aluno... Alguém? Agradeço desde já.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty Re: [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Cláudio Más 7/2/2014, 12:45

    Bom dia,

    Você indica que parametroCodigo = 130 se refere ao código de um aluno, mas depois atribui esse valor ao campo Historico_Cod_Afast.
    O erro não estaria aí? Ou Historico_Cod_Afast também se refere ao código de aluno?
    avatar
    Killerz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 06/09/2013

    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty Re: [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Killerz 7/2/2014, 13:19

    Bom dia Cláudio.

    Essa parte esta correta. parametroCodigo é uma variável global que uso para pegar o código de um campo de texto de outro formulário. E nesse botão quero inserir esse valor (de parametroCodigo) em minha tabela Histórico (visto que esse campo de texto já puxa o valor da tabela aluno). Historico_Cod_Afast se refere ao código do aluno, como uma chave estrangeira.

    Consegui resolver esse problema usando o código direto da tabela... ou seja

    Código:
    TBPrimeiroHistorico("Historico_Cod_Afast") = TBAluno("cod_aluno")

    Mas não entendo porque utilizando a variável dá problema... Dependendo do procedimento, posso acabar mudando a TBAluno("cod_aluno") para um próximo registro e etc, por isso queria que puxasse dessa variável que usei só pra isso, sem riscos de mudar.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty Re: [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Cláudio Más 7/2/2014, 13:32

    da um erro dizendo que não é possível a inclusão porque precisa de um registro relacionado na tabela Aluno

    Tem certeza que existe o código 130 na tabela Aluno?

    Nesse caso, só com uma cópia do banco de dados para análise, se puder enviar.
    avatar
    Killerz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 06/09/2013

    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty Re: [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Killerz 14/2/2014, 12:06

    Bom dia Cláudio! Peço desculpas pela demora, tive vários problemas em outros sistemas e deixei afastado esse. Por fim para Solucionar estou pegando de um outro recordset como já exemplifiquei no post acima, acabei desistindo de puxar da variável, só não entendi porque dela não puxou... Enfim, caso resolvido digamos que a força bruta, mas resolvido. Obrigado!

    Conteúdo patrocinado


    [Resolvido]Erro 3201 (registro relacionado em outra tabela) Empty Re: [Resolvido]Erro 3201 (registro relacionado em outra tabela)

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 16:27