ULTIMA MOVIMENTACAO - DAO

XYKOVIEIRA 30/05/2007 08:07:55
#218803
Alguém pode me ajudar?
Tenho um sistema criado na versão 5.0 do VB (com acesso a base de dados via DAO) que emprega um banco de dados <Filmes.mdb>, com três tabelas: <Andamento>, <Cliente> e <Filmes>.
Na movimentação do filme (tabela Andamento), criei uma rotina, no evento <LostFocus> da textbox <txtCodFita> onde, quando o usuário entra com um número de filme, cujo campo <Devolução>, que é acessado via txtDataRetorno, estiver vazio, então o sistema informa que o filme está emprestado. Se o campo <Devolução> contiver uma data, então o sistema permite prosseguir no cadastro de nova movimentação do filme.
No caso de haver apenas um registro por filme, o sistema funciona corretamente. O problema surge quando, havendo um filme que já foi devolvido (e que está com o campo <Devolução> preenchido), é permitido cadastrar um novo movimento para esse filme, sem data de retorno preenchida. Então, para um filme 'x', existe um registro de filme devolvido, e outro a devolver. Se tento cadastrar um terceiro movimento, o sistema não enxerga que o último movimento foi de saída (no caso, sem data de devolução ainda), aceitando um novo cadastro...
Como posso referenciar para que o sistema sempre aponte para a última movimentação (um mesmo filme, tendo sido emprestado três vezes: em 12/12/2006 e devolvido em 13/12/2006; emprestado em 15/12/2006 e devolvido em 20/12/2006; finalmente, emprestado em 25/12/2006 e ainda não devolvido, não aceite uma nova movimentação, já que não foi devolvido ainda...)?
Eis o código associado ao evento <LostFocus> da textbox txtCodFita:

Private Sub txtCodFita_LostFocus()

TbAndamento.Seek "=", txtCodFita
If TbAndamento![Devolução] = "" Then
MsgBox "Atenção! Filme emprestado..."
CancelaDigitação
Exit Sub
Else
lblFilme.Caption = TbCadFilmes.Fields("NomedoFilme")
End If
End Sub


'Nota: a função <CancelaDigitação> preenche os campos com os dados do filme, desabilitando o acesso às textbox.

MAXCIM 30/05/2007 08:30:10
#218808
Olá, vc pode criar um campo "STATUS" e definir nesse campo se o filme esta locado ou não...
já para ocorrencia do file ter mais cópias, crie codigos de referencia tipo 5898-a 5889-b ...


MARIOZNETO 30/05/2007 08:34:57
#218809
'Títulos incorretos
Por favor não utilize títulos para seu tópico que não ajudem em nada para quem pode te ajudar. Não coloque títulos como "Help", "Socorro", "Pelo Amor de DEUS" pois isto só dificulta as pessoas interessadas em ajudar à olhar seu tópico.

'Seja sugestivo
Procure sempre ser sugestivo no título de seu tópico, sendo o mais direto possível, por exemplo, não coloque "Erro de banco de dados", mas sim "Erro ao executar consulta com Like", pois as pessoas que possuem mais conhecimento e intimidade com o VB que você poderão focar suas respostas e ajudá-lo facilmente.

"Pessoal Procurem pesquisar antes de postar"

"Leia as régras do Forum Porfavor"
REGRAS
Falow T+
Tópico encerrado , respostas não são mais permitidas