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

    [Resolvido]Validação nao inseri na tabela

    Compartilhe

    maguim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 197
    Registrado : 15/05/2013

    [Resolvido]Validação nao inseri na tabela

    Mensagem  maguim em Ter 02 Maio 2017, 20:13

    ola meus amigos !

    Boa tarde!


    Tenho um formulário onde eu aperto um botão ele valida com a data atual e nome de usuário. porem ele nao salva na tabela a data e o nome, ressaltando o formulário não esta acoplado.


    esse form que postei seria somente pra teste, pois tenho outras ideias.

    o que seria ?

    Código:
    Private Sub Comando0_Click()
    If IsNull(Me.data) Then
        If MsgBox("Deseja fazer alteração?", vbQuestion + vbYesNo, "Atenção") = vbYes Then
            Me.data = Date
            Dim rs As Recordset
            Set rs = CurrentDb.OpenRecordset("select cod, dt from teste where cod=" & Me.data)
            Me.data.Enabled = False
            Me.validarnome = getUsuarioAtual()
            Me.validarnome.Enabled = False
            Me.Comando0.Enabled = False
        Else
            Me.data = ""
            MsgBox "Informação Cancelada !!!", vbInformation, "Cancel"
    End If
    End If
       
    End Sub
    Anexos
    Database9.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (405 Kb) Baixado 3 vez(es)


    .................................................................................
    O conhecimento é a Dadiva da Vida. Sem ele o que seriamos ?! [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

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

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  Silvio em Ter 02 Maio 2017, 20:30

    Boa tarde....

    Veja essa linha com calma e achará o provável erro.

    Set rs = CurrentDb.OpenRecordset("select cod, dt from teste where cod=" & Me.data)

    Salvo se o Cod...for a data em questão. Foi o que mais me chamou a atenção.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]

    maguim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 197
    Registrado : 15/05/2013

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  maguim em Qua 03 Maio 2017, 13:14

    Silvio bom dia !


    entao, seguindo suas dicas achei melhor trocar a opção de add no banco de dados, porem sem sucesso.


    fiquei ate de madru ontem, tentando resolver em casa. Crying or Very sad

    optei por fazer desse jeito. porem não esta lançando na tabela a data

    Private Sub Comando0_Click()
    Dim db As Database
    Dim rs As Recordset

    Set db = CurrentDb
    Set rs = db.OpenRecordset("teste")

    If IsNull(Me.data) Then
        If MsgBox("Deseja fazer alteração?", vbQuestion + vbYesNo, "Atenção") = vbYes Then
         
           
           rs.AddNew
           Me.data = Date
           rs("dt") = Me.data

           
           
           Me.data.Enabled = True
           Me.validarnome = getUsuarioAtual()
           Me.validarnome.Enabled = False
           Me.Comando0.Enabled = False
        Else
           Me.data = ""
           MsgBox "Informação Cancelada !!!", vbCritical, "Cancel"
    End If
    End If
       
    End Sub

    abraços


    .................................................................................
    O conhecimento é a Dadiva da Vida. Sem ele o que seriamos ?! [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    CassioFabre
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 434
    Registrado : 18/01/2013

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  CassioFabre em Qui 04 Maio 2017, 12:10

    Bom dia,

    Na tabela teste altere o campo dt para Data/Hora. E no código do Comando0 do form teste coloque:

    Código:
    Private Sub Comando0_Click()
    If IsNull(Me.data) Then
        If MsgBox("Deseja fazer alteração?", vbQuestion + vbYesNo, "Atenção") = vbYes Then
            Me.data = Date
            Me.data.Enabled = False
            Me.validarnome = getUsuarioAtual()
            Me.validarnome.Enabled = False
            Me.Comando0.Enabled = False
           
            Dim rs As Recordset
            Set rs = CurrentDb.OpenRecordset("teste")
           
            rs.AddNew
                rs("dt") = Me.data
                rs("vlnome") = validarnome
            rs.Update
            rs.Close
           
        Else
            Me.data = ""
            MsgBox "Informação Cancelada !!!", vbInformation, "Cancel"
    End If
    End If
       
    End Sub

    Veja se atende.

    Abraço.

    maguim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 197
    Registrado : 15/05/2013

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  maguim em Qui 04 Maio 2017, 12:23

    cassio me atendeu sim.

    uma duvida....

    Dim rs As Recordset
    Set rs = CurrentDb.OpenRecordset("tabela")


    alem do rs.AddNew e rs("campo")

    pra poder lancar os dados na tabela ele precisa do rs.Update e rs.Close. Se nao ele nao lança ?


    qual a relação do rs.Update e rs.Close no codigo ?

    abraços


    .................................................................................
    O conhecimento é a Dadiva da Vida. Sem ele o que seriamos ?! [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    CassioFabre
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 434
    Registrado : 18/01/2013

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  CassioFabre em Qui 04 Maio 2017, 12:32

    Bom dia,

    Sim, é necessário "atualizar" o recordset a cada interação e é esse processo que fará com que o registro seja salvo, por isso a escrita básica de um recordset de adição seria (substituindo por variáveis):

    Set rs = currentdb.OpenRecordset("[TABELA]")

    rs.AddNew
    rs("campo") = txtCampo
    rs.Update

    Leia mais a respeito aqui (copiar e colar no navegador): msdn.microsoft.com/pt-br/library/office/ff821467.aspx

    Já o rs.close é a forma de fechar o processo pois se voce deixa o rs aberto, ele fica consumindo espaço na memória e consequentemente causa perda de desempenho.

    Abraço.

    maguim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 197
    Registrado : 15/05/2013

    Re: [Resolvido]Validação nao inseri na tabela

    Mensagem  maguim em Qui 04 Maio 2017, 13:27

    Cassio


    Cara mto obrigado pelo informação. Aprendendo constantemente com vcs do forum.


    Abraços


    RESOLVIDO !


    .................................................................................
    O conhecimento é a Dadiva da Vida. Sem ele o que seriamos ?! [Você precisa estar registrado e conectado para ver esta imagem.]

      Data/hora atual: Qui 21 Set 2017, 02:37