Ayuda en RecorCount
Que tal sucede que cuando realizo una intruccion no me cuenta los registros que tengo y deberia hacerlo ya que tengo varios...
esto es lo que estoy haciendo las demas encabezados no los pngo porque ya saben lo que va.
MiConexion.Open
MisRegistros.Open "Clientes", MiConexion, adOpenDynamic, adLockOptimistic
If MisRegistros.RecordCount > 0 Then
MisRegistros.MoveFirst
End If
Cuando depuro el programa, en MisRegistros.REcordcount me dice que es -1 en vez de el numero de registros verdadero que tengo
alguien sabe porque me manda ese numero (-1) Gracias
esto es lo que estoy haciendo las demas encabezados no los pngo porque ya saben lo que va.
MiConexion.Open
MisRegistros.Open "Clientes", MiConexion, adOpenDynamic, adLockOptimistic
If MisRegistros.RecordCount > 0 Then
MisRegistros.MoveFirst
End If
Cuando depuro el programa, en MisRegistros.REcordcount me dice que es -1 en vez de el numero de registros verdadero que tengo
alguien sabe porque me manda ese numero (-1) Gracias
el(-1) cuando la tabla esta vacia otra cosa es que clientes sea una consulta y que este mal hecha este vacia
Ok gracias gamaliel, bueno la tabla no esta vacia, y clientes no es una consulta de hecho la baro completo poruqe mas a futuro le inserto datos, que mas podria ser porque cuando manejaba en Adodc y usaba el REcordcount si me los tomaba en cuenta
bueno dejo escrito lo que hago en total
Set MiConexion = New ADODB.Connection
Set MisRegistros = New ADODB.Recordset
MiConexion.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + App.Path & "PEPE.mdb" + ";Persist Security Info=False"
MiConexion.Open
MisRegistros.Open "Clientes", MiConexion, adOpenDynamic, adLockOptimistic
If MisRegistros.RecordCount > 0 Then
MisRegistros.MoveFirst
End If
compara = MisRegistros!CON_SOP
While MisRegistros.EOF = False And Trim(Text1.Text) <> Trim(compara)
MisRegistros.MoveNext
On Error Resume Next
compara = MisRegistros!CON_SOP
Wend
If MisRegistros.EOF = False Then
X = MsgBox("Contraseña Soporte Repetida", vbExclamation, "Imposible Guardar")
Else
insSQL = "INSERT INTO clientes(con_sop, nom_comr, raz_soc,nom_contac, correo) VALUES( '" & _
Trim(Text1.Text) & "', '" & Trim(Text2.Text) & "' , '" & Trim(Text3.Text) & "','" & Trim(Text4.Text) & "' ,'" & Trim(Text5.Text) & "' & '" & Label16.Caption & "' & '" & Trim(Text6.Text) & "' ) "
MiConexion.Execute insSQL
MisRegistros.MoveLast
guarda = MisRegistros!ID_CLIENTES
MisRegistros.Close
Set MisRegistros = Nothing
MiConexion.Close
Set MiConexion = Nothing
Si puedne ayudarme se los agradeceria mucho
bueno dejo escrito lo que hago en total
Set MiConexion = New ADODB.Connection
Set MisRegistros = New ADODB.Recordset
MiConexion.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + App.Path & "PEPE.mdb" + ";Persist Security Info=False"
MiConexion.Open
MisRegistros.Open "Clientes", MiConexion, adOpenDynamic, adLockOptimistic
If MisRegistros.RecordCount > 0 Then
MisRegistros.MoveFirst
End If
compara = MisRegistros!CON_SOP
While MisRegistros.EOF = False And Trim(Text1.Text) <> Trim(compara)
MisRegistros.MoveNext
On Error Resume Next
compara = MisRegistros!CON_SOP
Wend
If MisRegistros.EOF = False Then
X = MsgBox("Contraseña Soporte Repetida", vbExclamation, "Imposible Guardar")
Else
insSQL = "INSERT INTO clientes(con_sop, nom_comr, raz_soc,nom_contac, correo) VALUES( '" & _
Trim(Text1.Text) & "', '" & Trim(Text2.Text) & "' , '" & Trim(Text3.Text) & "','" & Trim(Text4.Text) & "' ,'" & Trim(Text5.Text) & "' & '" & Label16.Caption & "' & '" & Trim(Text6.Text) & "' ) "
MiConexion.Execute insSQL
MisRegistros.MoveLast
guarda = MisRegistros!ID_CLIENTES
MisRegistros.Close
Set MisRegistros = Nothing
MiConexion.Close
Set MiConexion = Nothing
Si puedne ayudarme se los agradeceria mucho
A mi tambien se me presento este problema, y no se por que no cuenta estos registros.
Te recomiendo que en vez de pasarle la tabla clientes, le pases la siguiente consulta:
SELECT Count(*) AS Total FROM Clientes
Entonces pasas a preguntar lo siguiente:
if MisRegistros!Total > 0 Then
'lo que quieras que suceda
end if
Con esto si me funcionó a mi, y espero que te funcione a ti tambien.
Cualquier problema, no dudes en preguntar
Saludos
Te recomiendo que en vez de pasarle la tabla clientes, le pases la siguiente consulta:
SELECT Count(*) AS Total FROM Clientes
Entonces pasas a preguntar lo siguiente:
if MisRegistros!Total > 0 Then
'lo que quieras que suceda
end if
Con esto si me funcionó a mi, y espero que te funcione a ti tambien.
Cualquier problema, no dudes en preguntar
Saludos
