NAVEGA?ÃO DE REGISTROS - 2

MILTONSILVA94 07/10/2017 17:11:32
#477049
Boa tarde,

Retomo este assunto novamente...
Estou com problema no botão [ô]próximo[ô] e [ô]anterior[ô].
Ex: tenho 6 registros na tabela perfis, quando carrego algum registro tipo 4, 5, ou 6 para o form e clico em próximo ou anterior, ele me joga para o registro 2, daí depois até segue as sequências corretas... Porém o correto seria trazer para a sequência já na primeira vez que apertar nestes botões.
O código que uso é:

Private Sub MontarNavegacao()
txtCodigoPerfil.text = lTBPerfis.Fields([Ô]codigo_perfil[Ô]).Value
txtDataHora.text = lTBPerfis.Fields([Ô]data_hora[Ô]).Value
txtPerfil.text = lTBPerfis.Fields([Ô]perfil[Ô]).Value
lblAtualizadoPor = lTBPerfis.Fields([Ô]atualizado_por[Ô]).Value
lblUltimaAtualizacao = lTBPerfis.Fields([Ô]ultima_atualizacao[Ô]).Value
End Sub

Private Sub cmdPrimeiro_Click()
lTBPerfis.MoveFirst
MontarNavegacao
txtIdPerfil.SetFocus
End Sub

Private Sub cmdProximo_Click()
lTBPerfis.MoveNext
If lTBPerfis.EOF Then
lTBPerfis.MoveLast
End If
MontarNavegacao
txtIdPerfil.SetFocus
End Sub

Private Sub cmdAnterior_Click()
lTBPerfis.MovePrevious
If lTBPerfis.BOF Then
lTBPerfis.MoveFirst
End If
MontarNavegacao
txtIdPerfil.SetFocus
End Sub

Private Sub cmdUltimo_Click()
lTBPerfis.MoveLast
MontarNavegacao
txtIdPerfil.SetFocus
End Sub

Alguém sabe dizer o que é?

Obrigado
FABRICIOWEB 07/10/2017 17:38:36
#477050
no banco de dados id esta em sequencia correta
o id e auto incremente?
não esta assim no banco

id 2
id 1
id 4

???
posta foto do seu banco de dados
MILTONSILVA94 07/10/2017 18:13:37
#477051
Citação:

:
no banco de dados id esta em sequencia correta
o id e auto incremente?
não esta assim no banco

id 2
id 1
id 4

???
posta foto do seu banco de dados



Boa tarde FABRICIOWEB,
No banco está por sequência correta: id 1, 2, 3, 4, etc
Não consigo tirar foto pois estou pelo celular.
OMAR2011 08/10/2017 17:29:18
#477056
Tente deste jeito.
Set lTBPerfis = gBDSistemaIntegrado.OpenRecordset([Ô]Select * from perfis order by id_perfil[Ô], dbOpenSnapshot)
DAMASCENO.CESAR 09/10/2017 13:12:41
#477063
Vê se funciona assim:

Private Sub cmdProximo_Click()

If lTBPerfis.EOF Then
MontarNavegacao
Else
lTBPerfis.MoveNext
MontarNavegacao
End If

txtIdPerfil.SetFocus
End Sub

Private Sub cmdAnterior_Click()
If lTBPerfis.BOF Then
MontarNavegacao
Else
lTBPerfis.MovePrevious
MontarNavegacao
End If
txtIdPerfil.SetFocus
End Sub
MILTONSILVA94 09/10/2017 23:20:39
#477072
Obrigado amigos!

Irei testar amanhã a noite e retornopara informar o resultado.
MILTONSILVA94 10/10/2017 20:01:57
#477099
Citação:

:
Tente deste jeito.
Set lTBPerfis = gBDSistemaIntegrado.OpenRecordset([Ô]Select * from perfis order by id_perfil[Ô], dbOpenSnapshot)



Boa noite Omar2011,

Desta maneira ele vai percorrer os perfis começando no registro 1, 2, 3, 4, 5, etc...

E na verdade se eu chamar a tela com o registro 5, e clicar em anterior ele precisa ir para o id_perfil 4, e clicando no próximo precisa ir para id_perfil 6..

MILTONSILVA94 10/10/2017 20:04:46
#477100
Citação:

:
Vê se funciona assim:

Private Sub cmdProximo_Click()

If lTBPerfis.EOF Then
MontarNavegacao
Else
lTBPerfis.MoveNext
MontarNavegacao
End If

txtIdPerfil.SetFocus
End Sub

Private Sub cmdAnterior_Click()
If lTBPerfis.BOF Then
MontarNavegacao
Else
lTBPerfis.MovePrevious
MontarNavegacao
End If
txtIdPerfil.SetFocus
End Sub



Olá DAMASCENO.CESAR,

Fiz desta forma e apresenta este erro quando clico em anterior ou próximo:
MILTONSILVA94 10/10/2017 20:10:10
#477102
Este registro que o sistema carrega neste form, é selecionado em um listview...
JABA 11/10/2017 00:20:40
#477105
Resposta escolhida
Tente algo como:

Private Sub cmdProximo_Click()

If Not lTBPerfis.EOF Then
lTBPerfis.MoveNext
MontarNavegacao
End If

txtIdPerfil.SetFocus
End Sub

Private Sub cmdAnterior_Click()
If Not lTBPerfis.BOF Then
lTBPerfis.MovePrevious
MontarNavegacao
End If
txtIdPerfil.SetFocus
End Sub
MILTONSILVA94 12/10/2017 17:52:32
#477126
Citação:

:
Tente algo como:

Private Sub cmdProximo_Click()

If Not lTBPerfis.EOF Then
lTBPerfis.MoveNext
MontarNavegacao
End If

txtIdPerfil.SetFocus
End Sub

Private Sub cmdAnterior_Click()
If Not lTBPerfis.BOF Then
lTBPerfis.MovePrevious
MontarNavegacao
End If
txtIdPerfil.SetFocus
End Sub



Boa tarde JABA,

Fiz a tentativa e apresentou também o seguinte erro:

Página 1 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas