Guest Robson Ferreira Postado Setembro 5, 2005 Denunciar Share Postado Setembro 5, 2005 Olá Pessoal... Coloquei no eventos LOSTFOCUS p/ não aceitar duplicidade no campo (TEXTBOX) o nome dos clientes cadastrado, mas toda vez que vou incluir um cliente o sistema dispara e lhe informa que já existe um cliente cadastrado. Sendo que ainda nem incluir... Já verifiquei no banco (Access) e nada. O disparo só acontece no ato que vou Incluir e/ou movimentar os registros... O que há de errado? Já tentei c/ os três, citados abaixos e nada...'---------------------------------------------------------------------------------Private Sub txtCliente_LostFocus()If Trim$(txtCliente) = "" Then Exit SubSet TblCliente = BD.OpenRecordset("TblCliente", dbOpenTable, False)TblCliente.Index = "Cliente"TblCliente.Seek "=", txtCliente.TextIf TblCliente.NoMatch = True ThenElseMsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Cliente"txtCliente.SetFocusEnd IfEnd Sub'---------------------------------------------------------------------------------Private Sub txtCliente_LostFocus()Set TblCliente = BD.OpenRecordset("tblCliente", dbOpenTable)TblCliente.Index = "Cliente" ' Campo Indexado (O mesmo deverá passar em branco ou nulo)TblCliente.Seek "=", txtCliente.Text ' verifica se o que foi digitado existeIf TblCliente.NoMatch = True Then 'O cliente existeExit SubElseMsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Cliente"txtCliente.SetFocusEnd IfEnd Sub'---------------------------------------------------------------------------------Private Sub txtCliente_LostFocus()Dim sSQL As StringDim r As RecordsetsSQL = "SELECT Cliente FROM tblCliente WHERE (Cliente = " & Chr(34) & txtCliente & Chr(34) & ");"Set r = BD.OpenRecordset(sSQL, dbOpenSnapshot)If Not r.BOF Then 'Existe registros na tabela, ou seja, encontrou clientes com o nome digitadoMsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Clientes"txtCliente.SetFocusExit SubEnd IfEnd Sub'--------------------------------------------------------------------------------- Grato, Robson´s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Robson Ferreira Postado Setembro 9, 2005 Denunciar Share Postado Setembro 9, 2005 Nenhuma Luz??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Robson Ferreira
Olá Pessoal...
Coloquei no eventos LOSTFOCUS p/ não aceitar duplicidade no campo (TEXTBOX) o nome
dos clientes cadastrado, mas toda vez que vou incluir um cliente o sistema dispara
e lhe informa que já existe um cliente cadastrado. Sendo que ainda nem incluir... Já
verifiquei no banco (Access) e nada. O disparo só acontece no ato que vou Incluir e/ou
movimentar os registros... O que há de errado?
Já tentei c/ os três, citados abaixos e nada...
'---------------------------------------------------------------------------------
Private Sub txtCliente_LostFocus()
If Trim$(txtCliente) = "" Then Exit Sub
Set TblCliente = BD.OpenRecordset("TblCliente", dbOpenTable, False)
TblCliente.Index = "Cliente"
TblCliente.Seek "=", txtCliente.Text
If TblCliente.NoMatch = True Then
Else
MsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Cliente"
txtCliente.SetFocus
End If
End Sub
'---------------------------------------------------------------------------------
Private Sub txtCliente_LostFocus()
Set TblCliente = BD.OpenRecordset("tblCliente", dbOpenTable)
TblCliente.Index = "Cliente" ' Campo Indexado (O mesmo deverá passar em branco ou nulo)
TblCliente.Seek "=", txtCliente.Text ' verifica se o que foi digitado existe
If TblCliente.NoMatch = True Then 'O cliente existe
Exit Sub
Else
MsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Cliente"
txtCliente.SetFocus
End If
End Sub
'---------------------------------------------------------------------------------
Private Sub txtCliente_LostFocus()
Dim sSQL As String
Dim r As Recordset
sSQL = "SELECT Cliente FROM tblCliente WHERE (Cliente = " & Chr(34) & txtCliente & Chr(34) & ");"
Set r = BD.OpenRecordset(sSQL, dbOpenSnapshot)
If Not r.BOF Then 'Existe registros na tabela, ou seja, encontrou clientes com o nome digitado
MsgBox txtCliente.Text & ", Já existe este cliente cadastrado no Banco de Dados.", vbCritical, "Clientes"
txtCliente.SetFocus
Exit Sub
End If
End Sub
'---------------------------------------------------------------------------------
Grato,
Robson´s
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.