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]Navegar em recordset

    avatar
    joão2017
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 75
    Registrado : 16/09/2017

    [Resolvido]Navegar em recordset Empty [Resolvido]Navegar em recordset

    Mensagem  joão2017 em 5/6/2018, 17:29

    Boa tarde!
    Encontrei aqui o exemplo de navegar em formulario desvinculado abaixo, do amigo JPaulo:
    Private cn As ADODB.Connection
    Private rs As ADODB.Recordset


    Private Sub Form_Load()
    On Error Resume Next
    Set cn = CurrentProject.Connection
    Set rs = New ADODB.Recordset

    With rs
    Set .ActiveConnection = cn
    .Source = "SELECT * FROM Clientes"
    .LockType = adLockOptimistic
    .CursorType = adOpenKeyset
    .Open
    End With

    Set Me.Recordset = rs

    Me.codCliente = rs!codCliente
    Me.nomeCliente = rs!nomeCliente
    Me.endCliente = rs!endCliente
    Me.Cidade = rs!Cidade
    Me.UF = rs!UF
    End Sub


    Private Sub btProximo_Click()
    Me.Recordset.MoveNext
    Me.codCliente = rs!codCliente
    Me.nomeCliente = rs!nomeCliente
    Me.endCliente = rs!endCliente
    Me.Cidade = rs!Cidade
    Me.UF = rs!UF
    End Sub


    Private Sub Form_Close()
    rs.Close
    cn.Close
    Set rs = Nothing
    End Sub

    Funciona legal, mas a tabela fica aberta, e se eu fecho o recordset ao carregar o formulario, não navega, alguem tem uma solução?


    Obrigado.
    CassioFabre
    CassioFabre
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Navegar em recordset Empty Re: [Resolvido]Navegar em recordset

    Mensagem  CassioFabre em 5/6/2018, 21:01



    .................................................................................
    Só não tem código pra morte!
    avatar
    joão2017
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 75
    Registrado : 16/09/2017

    [Resolvido]Navegar em recordset Empty Re: [Resolvido]Navegar em recordset

    Mensagem  joão2017 em 6/6/2018, 03:24

    Boa noite!
    Muito obrigado por responder, o exemplo que me mandou também deixa a tabela aberta, mas ele me deu uma luz, daí fiz assim:

    Private Sub btnPróximo_Click()
    On Error GoTo err
    Dim cnn As ADODB.Connection
    Dim rst As ADODB.Recordset
    Set cnn = CurrentProject.Connection
    Set rst = New ADODB.Recordset
    rst.CursorType = adOpenKeyset
    rst.LockType = adLockOptimistic
    rst.Open "tab_Funcionário", cnn, , , adCmdTable
    rst.Move atual
    Me.txtCódigoDoFuncionário = rst("CódigoDoFuncionário")
    Me.txtNomeDoFuncionário = rst("NomeDoFuncionário")
    atual = atual + 1
    rst.Close
    cnn.Close
    Set rst = Nothing
    Set cnn = Nothing
    Exit Sub
    err: MsgBox "Último funcionário.", vbInformation, "Controle de produtos e serviços"
    End Sub

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Private Sub btnAnterior_Click()
    On Error GoTo err
    Dim cnn As ADODB.Connection
    Dim rst As ADODB.Recordset
    Set cnn = CurrentProject.Connection
    Set rst = New ADODB.Recordset
    rst.CursorType = adOpenKeyset
    rst.LockType = adLockOptimistic
    rst.Open "tab_Funcionário", cnn, , , adCmdTable
    rst.Move atual - 2
    Me.txtCódigoDoFuncionário = rst("CódigoDoFuncionário")
    Me.txtNomeDoFuncionário = rst("NomeDoFuncionário")
    atual = atual - 1
    rst.Close
    cnn.Close
    Set rst = Nothing
    Set cnn = Nothing
    Exit Sub
    err: MsgBox "Primeiro funcionário.", vbInformation, "Controle de produtos e serviços"
    End Sub

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Private Sub btnPrimeiro_Click()
    On Error GoTo err
    Dim cnn As ADODB.Connection
    Dim rst As ADODB.Recordset
    Set cnn = CurrentProject.Connection
    Set rst = New ADODB.Recordset
    rst.CursorType = adOpenKeyset
    rst.LockType = adLockOptimistic
    rst.Open "tab_Funcionário", cnn, , , adCmdTable
    rst.MoveFirst
    Me.txtCódigoDoFuncionário = rst("CódigoDoFuncionário")
    Me.txtNomeDoFuncionário = rst("NomeDoFuncionário")
    atual = rst.AbsolutePosition
    rst.Close
    cnn.Close
    Set rst = Nothing
    Set cnn = Nothing
    Exit Sub
    err: MsgBox "Primeiro funcionário.", vbInformation, "Controle de produtos e serviços"
    End Sub

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Private Sub btnÚltimo_Click()
    On Error GoTo err
    Dim cnn As ADODB.Connection
    Dim rst As ADODB.Recordset
    Set cnn = CurrentProject.Connection
    Set rst = New ADODB.Recordset
    rst.CursorType = adOpenKeyset
    rst.LockType = adLockOptimistic
    rst.Open "tab_Funcionário", cnn, , , adCmdTable
    rst.MoveLast
    Me.txtCódigoDoFuncionário = rst("CódigoDoFuncionário")
    Me.txtNomeDoFuncionário = rst("NomeDoFuncionário")
    atual = rst.AbsolutePosition
    rst.Close
    cnn.Close
    Set rst = Nothing
    Set cnn = Nothing
    Exit Sub
    err: MsgBox "Último funcionário.", vbInformation, "Controle de produtos e serviços"
    End Sub

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Private Sub Form_Load()
    atual = 1
    End Sub

    Funcionou direitinho, e deixa a tabela fechada.

    Obrigado.
    CassioFabre
    CassioFabre
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Navegar em recordset Empty Re: [Resolvido]Navegar em recordset

    Mensagem  CassioFabre em 6/6/2018, 11:04

    Bom dia,

    Que legal! Não se esqueça de marcar o tópico como resolvido.

    Abraço.


    .................................................................................
    Só não tem código pra morte!
    avatar
    joão2017
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 75
    Registrado : 16/09/2017

    [Resolvido]Navegar em recordset Empty Re: [Resolvido]Navegar em recordset

    Mensagem  joão2017 em 6/6/2018, 12:27

    Esqueci desta parte.

    Option Compare Database
    Option Explicit
    Dim atual


    Conteúdo patrocinado

    [Resolvido]Navegar em recordset Empty Re: [Resolvido]Navegar em recordset

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/7/2019, 13:14