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


    [Resolvido]Problema com a gravação de dados do formulário.

    Luiz Carlos Junior
    Luiz Carlos Junior
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 473
    Registrado : 21/08/2012

    [Resolvido]Problema com a gravação de dados do formulário. Empty Problema com a gravação de dados do formulário.

    Mensagem  Luiz Carlos Junior 10/10/2012, 14:39

    Blz galera?
    To com uma dificuldade aqui na construção do meu formulário baseado em um banco de dados access. Ainda falta muita coisa, mas o botão gravar, ao ser pressionado, da o seguinte erro: Erro de sintaxe do INSERT INTO. Preciso de ajuda urgente, pois, usarei esse formulário para matrículas aqui no meu trampo. Segue o Código:

    Private Sub cmdGravar_Click()
    On Error GoTo Err_cmdGravar_Click

    If txtRA <> "" And txtNOME <> "" And txtDATA_NASC <> "" And txtENDERECO <> "" And txtTEL1 <> "" Then
    GerarRM
    Comando = "Insert into Alunos ([RM], [RA], [NOME], [SEXO], [DATA_NASC], [NATURALIDADE], [MAE], [RG_MAE], [PAI], [RG_PAI], [CERTIDAO_NOVA], [CERTIDAO], [LIVRO], [FOLHA], [EMISSAO], [DISTRITO], [COMARCA], [ESTADO], [ENDERECO], [BAIRRO], [CIDADE], [TEL1], [TEL2], [TEL3], [TEL4], [ANO], [TURNO], [ENSINO], [SERIE], [TURMA], [NUM_CH], [DATA_MAT], [OBS]) "
    Comando = Comando & "VALUES("
    Comando = Comando & "'" & txtRM & "',"
    Comando = Comando & "'" & txtRA & "',"
    Comando = Comando & "'" & txtNOME & "',"
    Comando = Comando & "'" & cmbSEXO & "',"
    Comando = Comando & IIf(Not IsDate(txtDATA_NASC), "Null", "'" & Format(txtDATA_NASC, "dd/mm/yyyy") & "'") & ","
    Comando = Comando & "'" & cmbNATURALIDADE & "',"
    Comando = Comando & "'" & txtMAE & "',"
    Comando = Comando & "'" & txtRGMAE & "',"
    Comando = Comando & "'" & txtPAI & "',"
    Comando = Comando & "'" & txtRGPAI & "',"
    Comando = Comando & "'" & txtCERTIDAO_NOVA & "',"
    Comando = Comando & "'" & txtNUM_CERTIDAO & "',"
    Comando = Comando & "'" & txtLIVRO & "',"
    Comando = Comando & "'" & txtFOLHA & "',"
    Comando = Comando & IIf(Not IsDate(txtEMISSAO), "Null", "'" & Format(txtEMISSAO, "dd/mm/yyyy") & "'") & ","
    Comando = Comando & "'" & cmbDISTRITO & "',"
    Comando = Comando & "'" & cmbCOMARCA & "',"
    Comando = Comando & "'" & cmbESTADO & "',"
    Comando = Comando & "'" & txtENDERECO & "',"
    Comando = Comando & "'" & cmbBAIRRO & "',"
    Comando = Comando & "'" & txtCIDADE & "',"
    Comando = Comando & "'" & txtTEL1 & "',"
    Comando = Comando & "'" & txtTEL2 & "',"
    Comando = Comando & "'" & txtTEL3 & "',"
    Comando = Comando & "'" & txtTEL4 & "',"
    Comando = Comando & "'" & txtANO & "',"
    Comando = Comando & "'" & txtENSINO & "',"
    Comando = Comando & "'" & cmbSERIE & "',"
    Comando = Comando & "'" & cmbTURMA & "',"
    Comando = Comando & "'" & txtNUM_CH & "',"
    Comando = Comando & IIf(Not IsDate(txtDATA_MAT), "Null", "'" & Format(txtDATA_MAT, "dd/mm/yyyy") & "'") & ","
    Comando = Comando & "'" & txtOBS & "')"
    banco.Execute (Comando)
    Debug.Print Comando
    MsgBox ("Os dados foram cadastrados com sucesso!"), vbInformation + vbOKOnly, "Cadastro"
    Limpar
    Else
    MsgBox ("Necessário informar os dados para efetuar o cadastro!"), vbInformation + vbOKOnly, "Dados Necessários"
    txtRA.SetFocus
    End If

    Exit_cmdGravar_Click:
    Exit Sub
    Err_cmdGravar_Click:
    MsgBox Err.Description
    Resume Exit_cmdGravar_Click

    End Sub

    'Para ajudar, estou anexando o Banco de Dados completo. Desde já aviso que está em construção, por isso existem botões sem código ainda. Agradeço desde já.
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 13/10/2012, 18:21

    Sua instrução aponta para inclusão em 33 campos da tabela... no entanto só faz refereência a 32 valores a serem inseridos.

    Veja qual caixa texto falta para um dos campos da tabela.


    A instrução tambem pode ser feita assim, eu creio ser mais limpa:

    Código:

            StrSQL = "Insert into Alunos (RM, RA, NOME,SEXO,DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO," _
                        & " LIVRO, FOLHA, EMISSAO, DISTRITO,COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1, TEL2, TEL3, TEL4, ANO, TURNO," _
                        & " ENSINO, SERIE, TURMA, NUM_CH, DATA_MAT, OBS) VALUES('" & txtRM & "', '" & txtRA & "', '" & txtNOME & "'," _
                        & "'" & cmbSEXO & "'," & IIf(Not IsDate(txtDATA_NASC), "Null", "'" & Format(txtDATA_NASC, "dd/mm/yyyy") & "'") & "," _
                        & "'" & cmbNATURALIDADE & "','" & txtMAE & "','" & txtRGMAE & "','" & txtPAI & "','" & txtRGPAI & "','" & txtCERTIDAO_NOVA & "'," _
                        & "'" & txtNUM_CERTIDAO & "','" & txtLIVRO & "','" & txtFOLHA & "'," & IIf(Not IsDate(txtEMISSAO), "Null", "'" & Format(txtEMISSAO, "dd/mm/yyyy") & "'") & "," _
                        & "'" & cmbDISTRITO & "','" & cmbCOMARCA & "','" & cmbESTADO & "','" & txtENDERECO & "','" & cmbBAIRRO & "','" & txtCIDADE & "'," _
                        & "'" & txtTEL1 & "','" & txtTEL2 & "','" & txtTEL3 & "','" & txtTEL4 & "','" & txtANO & "','" & txtENSINO & "','" & cmbSERIE & "'," _
                        & "'" & cmbTURMA & "','" & txtNUM_CH & "'," & IIf(Not IsDate(txtDATA_MAT), "Null", "'" & Format(txtDATA_MAT, "dd/mm/yyyy") & "'") & "," _
                        & "'" & txtOBS & "')"
                       
            banco.Execute (StrSQL)

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 13/10/2012, 18:27

    Eis funcionando:

    Faltava o campo txtTurno do formulário

    Código:

            StrSQL = "Insert into tb_Alunos (RM, RA, NOME,SEXO,DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO," _
                        & " LIVRO, FOLHA, EMISSAO, DISTRITO,COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1, TEL2, TEL3, TEL4, ANO, TURNO," _
                        & " ENSINO, SERIE, TURMA, NUM_CH, DATA_MAT, OBS) VALUES('" & txtRM & "', '" & txtRA & "', '" & txtNOME & "'," _
                        & "'" & cmbSEXO & "'," & IIf(Not IsDate(txtDATA_NASC), "Null", "'" & Format(txtDATA_NASC, "dd/mm/yyyy") & "'") & "," _
                        & "'" & cmbNATURALIDADE & "','" & txtMAE & "','" & txtRGMAE & "','" & txtPAI & "','" & txtRGPAI & "','" & txtCERTIDAO_NOVA & "'," _
                        & "'" & txtNUM_CERTIDAO & "','" & txtLIVRO & "','" & txtFOLHA & "'," & IIf(Not IsDate(txtEMISSAO), "Null", "'" & Format(txtEMISSAO, "dd/mm/yyyy") & "'") & "," _
                        & "'" & cmbDISTRITO & "','" & cmbCOMARCA & "','" & cmbESTADO & "','" & txtENDERECO & "','" & cmbBAIRRO & "','" & txtCIDADE & "'," _
                        & "'" & txtTEL1 & "','" & txtTEL2 & "','" & txtTEL3 & "','" & txtTEL4 & "','" & txtANO & "','" & txtENSINO & "','" & txtENSINO & "','" & cmbSERIE & "'," _
                        & "'" & cmbTURMA & "','" & txtNUM_CH & "'," & IIf(Not IsDate(txtDATA_MAT), "Null", "'" & Format(txtDATA_MAT, "dd/mm/yyyy") & "'") & "," _
                        & "'" & txtOBS & "')"
                       
            CurrentDb.Execute (StrSQL)

    Cumprimentos.
    Luiz Carlos Junior
    Luiz Carlos Junior
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 473
    Registrado : 21/08/2012

    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Luiz Carlos Junior 19/10/2012, 20:06

    Boa tarde Piloto.
    Funcionou o botão, valeu.
    Porém (sempre tem um), não aparece nada na tabela. O que pode estar havendo?
    Desculpe o trastorno.
    Desde já agradeço a atenção.
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 19/10/2012, 20:15

    Se observar eu modifiquei os nome de variáveis e a forma de execução da SQL...

    de comando para StrSQL
    de banco.Execute para CurrentDb.Execute

    Pode ser que não modificou tudo ai em teu codigo.

    Mas ei-lo aqui:

    https://dl.dropbox.com/u/26441349/Chumbrega.rar

    Cumprimentos.
    Luiz Carlos Junior
    Luiz Carlos Junior
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 473
    Registrado : 21/08/2012

    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Luiz Carlos Junior 19/10/2012, 20:36

    A função valida_selecao e a sub Gerar_RM foram anuladas. Eram elas que tavam dando erro?
    a Gerar_RM era essencial, se der pra me explicar como arrumo, agradeço.
    Mas desde já, valeu mesmo ela ajuda. Ta salvado minha vida nesse fim de ano...
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 19/10/2012, 21:03

    Claro... Logo mais vejo isto pra ti
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 19/10/2012, 21:07

    Para fazer a correção eu havia desabilitado a linha no módulo.

    Function valida_selecao()
    'Set dataset = banco.OpenRecordset(Comando, dbOpenDynaset)
    End Function


    Apenas retire as aspas simples antes do código

    Function valida_selecao()
    Set dataset = banco.OpenRecordset(Comando, dbOpenDynaset)
    End Function


    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 19/10/2012, 21:11

    E no código eu havia retirado a sub gerarRM...

    Substitua o codigo completo por este:


    On Error GoTo Err_cmdGravar_Click

    If txtRA <> "" And txtNOME <> "" And txtDATA_NASC <> "" And txtENDERECO <> "" And txtTEL1 <> "" Then
    GerarRM
    StrSQL = "Insert into tb_Alunos (RM, RA, NOME,SEXO,DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO," _
    & " LIVRO, FOLHA, EMISSAO, DISTRITO,COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1, TEL2, TEL3, TEL4, ANO, TURNO," _
    & " ENSINO, SERIE, TURMA, NUM_CH, DATA_MAT, OBS) VALUES('" & txtRM & "', '" & txtRA & "', '" & txtNOME & "'," _
    & "'" & cmbSEXO & "'," & IIf(Not IsDate(txtDATA_NASC), "Null", "'" & Format(txtDATA_NASC, "dd/mm/yyyy") & "'") & "," _
    & "'" & cmbNATURALIDADE & "','" & txtMAE & "','" & txtRGMAE & "','" & txtPAI & "','" & txtRGPAI & "','" & txtCERTIDAO_NOVA & "'," _
    & "'" & txtNUM_CERTIDAO & "','" & txtLIVRO & "','" & txtFOLHA & "'," & IIf(Not IsDate(txtEMISSAO), "Null", "'" & Format(txtEMISSAO, "dd/mm/yyyy") & "'") & "," _
    & "'" & cmbDISTRITO & "','" & cmbCOMARCA & "','" & cmbESTADO & "','" & txtENDERECO & "','" & cmbBAIRRO & "','" & txtCIDADE & "'," _
    & "'" & txtTEL1 & "','" & txtTEL2 & "','" & txtTEL3 & "','" & txtTEL4 & "','" & txtANO & "','" & txtENSINO & "','" & txtENSINO & "','" & cmbSERIE & "'," _
    & "'" & cmbTURMA & "','" & txtNUM_CH & "'," & IIf(Not IsDate(txtDATA_MAT), "Null", "'" & Format(txtDATA_MAT, "dd/mm/yyyy") & "'") & "," _
    & "'" & txtOBS & "')"

    CurrentDb.Execute (StrSQL)
    Debug.Print Comando
    MsgBox ("Os dados foram cadastrados com sucesso!"), vbInformation + vbOKOnly, "Cadastro"
    Limpar
    Else
    MsgBox ("Necessário informar os dados para efetuar o cadastro!"), vbInformation + vbOKOnly, "Dados Necessários"
    txtRA.SetFocus
    End If

    Exit_cmdGravar_Click:
    Exit Sub
    Err_cmdGravar_Click:
    MsgBox Err.Description
    Resume Exit_cmdGravar_Click

    End Sub



    Cumprimentos.
    Luiz Carlos Junior
    Luiz Carlos Junior
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 473
    Registrado : 21/08/2012

    [Resolvido]Problema com a gravação de dados do formulário. Empty Aeeeeeee!

    Mensagem  Luiz Carlos Junior 19/10/2012, 22:45

    Valeu muito velhinho. Troquei onde estava txtRM por NumCod e ele coloca o próximo registro...
    Já sei quando tiver duvidas onde procurar agora. hehehe
    Fica com Deus.
    Abraço!
    avatar
    Convidado
    Convidado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Convidado 19/10/2012, 23:48

    O Fórum agradece o Retorno.


    Conteúdo patrocinado


    [Resolvido]Problema com a gravação de dados do formulário. Empty Re: [Resolvido]Problema com a gravação de dados do formulário.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/11/2024, 23:52