USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Localizando registros - último registro...
ChicoVieira
CRUZEIRO
SP - BRASIL
Postada em 24/04/2008 09:36 hs            
Desculpem pela msg anterior. Saiu com uma fonte minúscula....
Olá... Preciso da ajuda dos 'papas' em VB que povoam este forvum...

Estou tentando o acesso aos dados via DAO (VB5), já que pelo método SEEK, o ponteiro

Aponta para o primeiro registro, sendo que preciso que aponte para o último registro (último movimento desse livro <última vez que saiu da prateleira>). Todavia, o sistema sempre apresenta erro em <Run-time>.

Na tabela <Andamento>, o campo NumFilme é sua numeração no estoque, e o campo <Retirada> é a data em que o livro foi retirado da estante, sendo que determinado livro poderá ser retirado inúmeras vezes, e a procura deveria apontar para o registro da última retirada.

( a função AtualizaFormulario preenche o form com os dados da tabela Andamento, e os dados do livro e do cliente são obtidos nas tabelas próprias). Eis o código que estou empregando:

 

Option Explicit

Dim BancoDeDados As Database

Dim TbCadLivros As Recordset

Dim TbCliente As Recordset

Dim TbAndamento As Recordset

 

 

Private Sub cmdLocalizar_Click()

LimpaFormulario

Dim Sql As String, Procura As String

Procura = InputBox("Digite o nº procurado:", "Localizar último movimento")

If Len(Procura) = 0 Then Exit Sub

    Sql = "Select * from Andamento Where NumLivro Like" & Procura & "Order by Retirada desc"

    TbAndamento.FindMin Procura

    If TbAndamento.NoMatch = True Then

        MsgBox "Andamento inexistente..."

        Exit Sub

    Else

        AtualizaFormulario  'Povoa o form

    End If

Exit Sub

 

 

Private Sub Form_Load()

    Set BancoDeDados = OpenDatabase(App.Path & "LivrosDireito.mdb")

    Set TbCliente = BancoDeDados.OpenRecordset("CadastrodeClientes", dbOpenTable)

    Set TbLivros = BancoDeDados.OpenRecordset("CadastrodeLivros", dbOpenTable)

    Set TbAndamento = BancoDeDados.OpenRecordset("Andamento", dbOpenDynaset)

    TbCliente.Index = "IndCódigo"

    TbCadLivros.Index = "IndCódigo"

    'TbAndamento.Index = "IndLivro"            ‘Linha desabilitada.

    cmdGravar.Enabled = False

    Frame1.Enabled = False

    If TbAndamento.EOF = False Then

        AtualizaFormulario

    End If

End Sub

 

     
Ama
Pontos: 2843
UBERLÂNDIA
MG - BRASIL
Postada em 15/05/2008 12:10 hs         
deixa encontrar o primeiro depois insira uma linha de código para se posicionar no ultimo registro
if   TbAndamento.recordcount>0 then   TbAndamento.moveMax
     
Treze
Pontos: 2843 Pontos: 2843
SÃO VICENTE
SP - BRASIL
ENUNCIADA !
Postada em 15/05/2008 13:11 hs            

tenta mudara isto

 

Private Sub cmdLocalizar_Click()

LimpaFormulario

Dim Sql As String, Procura As String

Procura = InputBox("Digite o nº procurado:", "Localizar último movimento")

If Len(Procura) = 0 Then Exit Sub

    Sql = "Select Max(Retirada) from Andamento Where NumLivro=" & Procura

    Set Tb = BancoDeDados.OpenRecordSet(Sql, DbOpenDyNaset)
  If Tb.RecordCount = 0 Then
      msgbox"Registro não encontrado", 64,"Aviso"
     Else

        AtualizaFormulario  'Povoa o form

  End If

End Sub

 
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2026   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página