Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/08/2008, 16:48
Avatar de er_davilito
er_davilito
 
Fecha de Ingreso: julio-2008
Ubicación: La Línea
Mensajes: 10
Antigüedad: 16 años, 9 meses
Puntos: 0
Dar de alta un cliente

Hola muy buenas, tengo en un formulario los tipicos textbox y el boton agregar cliente, pues bien, para mi eso es facil y lo tenía bien,pero a la hora de hacer que meta por segunda vez al mismo cliente,al ser llave(nombre) me salía el error de datos duplicados, pues bien,hice esto.

Private Sub Command1_Click()

Set conexion = New ADODB.Connection
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bd1.mdb;Persist Security Info=False"

Set record = New ADODB.Recordset
sql = "SELECT nombre FROM clientes"
record.Open sql, conexion


If Text1.Text = record!nombre Then
MsgBox "El Cliente ya está Registrado", , "Atención"
Else
If Text1.Text = "" Or Text2.Text = "" Or Text3.Text = "" Then
MsgBox "Es obligatorio rellenar los 3 primeros campos"
Else
If Text4.Text = "" Then
Text4.Text = 0
End If

If Text5.Text = "" Then
Text5.Text = "Sin Correo Electrónico"
End If

Set conexion = New ADODB.Connection
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bd1.mdb;Persist Security Info=False"

sql = "INSERT INTO clientes VALUES ('" & Text1.Text & "','" & Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text5.Text & "')"

conexion.Execute sql
conexion.Close

MsgBox "Cliente Registrado"

End If
End If

-y me sale el siguiente error:
El valor de BOF o EOF es true, o el actual registro se eliminó, la operación solicitada requiere un registro actual.

El problema es k no se hacer bien la busqueda del campo de la llave para que me diga que el cliente está ya registrado o no. por favor ayudenme, tngo 3 problemas cm éste en mi aplicación, en CLIENTES, PROVEEDORES y CITAS DE UNA AGENDA.

Os lo agradeceré muchisimo de verdad. Un Saludo