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

    Tabela não aceita insert

    Compartilhe

    cakanilo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 42
    Registrado : 09/04/2011

    Tabela não aceita insert

    Mensagem  cakanilo em Qui 03 Jul 2014, 18:48

    Boa tarde,

    necessito de fazer um inset em uma tabela e dá tudo certo, mas quando vou localizar o registro não foi inserido, existe um por acaso um limite de relacionamento por tabela, pois quando excluo alguns relacionamentos a tabela permite o insert.

    eis o meu código:

    Dim stDocName As String
    Dim stLinkCriteria As String
    Dim var5 As Integer
    Dim var6 As Integer


    Dim Q As String
    Me.Pegalogin = Forms!FormLogin.Login

    'Define a quebra de linha
    Q = Chr(13) & Chr(10)

    If Me.Nome <> "" And Me.CPF <> "" And Me.IDSituacaoFuncional <> "" And Me.Matricula <> "" And Me.IDCargo <> "" And Me.IDFuncao <> "" And Me.IDOrgao <> "" And Me.IDLotacaoPai <> "" And Me.IDLotacao <> "" And Me.Email <> "" And Me.IDSexo <> "" And Me.DTNomeacao <> "" And Me.IDCadastroServidorControladordePonto <> "" Then
    var5 = DMax("IDCadastro_Servidor", "TBCadastroServidor")
    var6 = Val(var5) + Val(1)
    Me.Pegalogin = Nz(DLookup("IDUsuario", "TBUsuario", "[Login] like Forms!FormLogin.Login"), 0)

    If Not IsNull(Me.DTExoneracao) Then

    If MsgBox("Os dados preenchidos estão corretos?", vbYesNo) = vbNo Then

    Cancel = True
    Else
    Cancel = False




    'Insert da tabela de cadastro servidor
    CurrentDb.Execute "INSERT INTO TBCadastroServidor (Nome, CPF, Matricula, Email, Telefone, IDLotacao, IDLotacaoPai, IDSituacaoFuncional, IDCargo, IDFuncao, IDSexo, IDOrgao, IDCadastroServidorControladordePonto, DTNomeacao, DTExoneracao, IDUsuario, DTInsercao) " & _
    Q & " VALUES ('" & Me.Nome & "','" & Me.CPF & "','" & Me.Matricula & "','" & Me.Email & "', '" & Me.Telefone & "'," & Me.IDLotacao & "," & Me.IDLotacaoPai & ", " & Me.IDSituacaoFuncional & ", " & Me.IDCargo & ", " & Me.IDFuncao & "," & Me.IDSexo & ", " & Me.IDOrgao & "," & Me.IDCadastroServidorControladordePonto & ", #" & Format(Me.DTNomeacao, "mm/dd/yyyy") & "#, #" & Format(Me.DTExoneracao, "mm/dd/yyyy") & "#," & Me.Pegalogin & ", #" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"

    'insert da tabela de CadastroServidorControladordePonto
    CurrentDb.Execute "INSERT INTO TBCadastroServidorControladordePonto (Nome, CPF, Matricula, Email, Telefone, IDLotacao, IDLotacaoPai, IDSituacaoFuncional, IDCargo, IDFuncao, IDSexo, IDOrgao,DTNomeacao, DTExoneracao, IDUsuario, DTInsercao) " & _
    Q & " VALUES ('" & Me.Nome & "','" & Me.CPF & "','" & Me.Matricula & "','" & Me.Email & "', '" & Me.Telefone & "'," & Me.IDLotacao & "," & Me.IDLotacaoPai & ", " & Me.IDSituacaoFuncional & ", " & Me.IDCargo & ", " & Me.IDFuncao & "," & Me.IDSexo & ", " & Me.IDOrgao & ", #" & Format(Me.DTNomeacao, "mm/dd/yyyy") & "#, #" & Format(Me.DTExoneracao, "mm/dd/yyyy") & "#," & Me.Pegalogin & ", #" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"

    'inset da tabela de registro de frequência
    CurrentDb.Execute "INSERT INTO TBFrequencia (IDCadastro_Servidor, AnoFrequencia, Usuario, DTInsercao) " & _
    Q & " VALUES (" & var6 & ", " & Me.AnoFrequencia & ",'" & Me.Pegalogin & "',#" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"


    MsgBox "Cadastro realizado com sucesso!"
    'DoCmd.Close acForm, "FormCadastro_Servidor", acNormal

    End If

    Else

    If MsgBox("Os dados preenchidos estão corretos?", vbYesNo) = vbNo Then

    Cancel = True
    Else
    Cancel = False
    Me.Pegalogin = Nz(DLookup("IDUsuario", "TBUsuario", "[Login] like'" & Me.Pegalogin & "'"), 0)

    'Insert da tabela de cadastro servidor
    CurrentDb.Execute "INSERT INTO TBCadastroServidor (Nome, CPF, Matricula, Email, Telefone, IDLotacao, IDLotacaoPai, IDSituacaoFuncional, IDCargo, IDFuncao, IDSexo, IDOrgao, IDCadastroServidorControladordePonto, DTNomeacao, IDUsuario, DTInsercao) " & _
    Q & " VALUES ('" & Me.Nome & "','" & Me.CPF & "','" & Me.Matricula & "','" & Me.Email & "', '" & Me.Telefone & "'," & Me.IDLotacao & "," & Me.IDLotacaoPai & ", " & Me.IDSituacaoFuncional & ", " & Me.IDCargo & ", " & Me.IDFuncao & "," & Me.IDSexo & ", " & Me.IDOrgao & "," & Me.IDCadastroServidorControladordePonto & ", #" & Format(Me.DTNomeacao, "mm/dd/yyyy") & "#," & Me.Pegalogin & ", #" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"

    'Insert da tabela de CadastroServidorControladordePonto
    CurrentDb.Execute "INSERT INTO TBCadastroServidorControladordePonto (Nome, CPF, Matricula, Email, Telefone, IDLotacao, IDLotacaoPai, IDSituacaoFuncional, IDCargo, IDFuncao, IDSexo, IDOrgao, DTNomeacao, IDUsuario, DTInsercao) " & _
    Q & " VALUES ('" & Me.Nome & "','" & Me.CPF & "','" & Me.Matricula & "','" & Me.Email & "', '" & Me.Telefone & "'," & Me.IDLotacao & "," & Me.IDLotacaoPai & ", " & Me.IDSituacaoFuncional & ", " & Me.IDCargo & ", " & Me.IDFuncao & "," & Me.IDSexo & ", " & Me.IDOrgao & ", #" & Format(Me.DTNomeacao, "mm/dd/yyyy") & "#," & Me.Pegalogin & ", #" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"

    'inset da tabela de registro de frequência
    CurrentDb.Execute "INSERT INTO TBFrequencia (IDCadastro_Servidor, AnoFrequencia, Usuario, DTInsercao) " & _
    Q & " VALUES (" & var6 & ", " & Me.AnoFrequencia & ",'" & Me.Pegalogin & "',#" & Format(Me.DTInsercao, "mm/dd/yyyy hh:mm:ss") & "#);"


    MsgBox "Cadastro realizado com sucesso!"
    'DoCmd.Close acForm, "FormCadastro_Servidor", acNormal

    End If

    End If

    Else

    MsgBox "Preencha todos os campos para finalizar o cadastro!"

    End If

    halmeida
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 90
    Registrado : 07/08/2011

    Re: Tabela não aceita insert

    Mensagem  halmeida em Sab 05 Jul 2014, 02:31

    Vou citar um exemplo que pode solucionar sua dúvida. Se temos duas tabelas, uma chamada COMPRAS e a outra CLIENTES, onde há relacionamento entre ambas, e na tabela COMPRAS, o campo relacionado com a tabela CLIENTES é um chamado NOME_CLIENTE. Se o relacionamento entre as tabelas for definido como "Um para muitos", se for tentar inserir algum registro de compras com o campo NOME_CLIENTE com algum nome de cliente diferente dos clientes que constarem na tabela CLIENTES, não será possível a inserção do novo registro. Talvez seja este o problema de sua consulta. Faça alguns testes e confirme.

      Data/hora atual: Seg 23 Out 2017, 05:25