Problema con RecordSet
Publicado por David (1 intervención) el 06/06/2005 10:17:55
Hola a todos: tengo un problema con un recordset.
La propiedad RecordCount del rst1 vale –1 y no se corresponde con el número de registros que hay en rst1, ¿cómo podría solucionar esto? Que tenga el valor de la cantidad de registros que hay en el rst1.
La bd es access2000, el programa lo estoy realizando con vb 6.0 Pro sobre un PC con XP Pro
.................Codigo...................
Dim sBase,sql As String
' Asignar el nombre de la base de datos
' (si la aplicación se ejecuta en el directorio raiz, quitar el \)
sBase = App.Path & "\BD\dbbajas.mdb"
' Crear los objetos
Set Cnn1 = New ADODB.Connection
Set rst1 = New ADODB.Recordset
Cnn1.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & sBase
sql = "SELECT * FROM Tcategorias ORDER BY nombre"
rst1.Open sql, Cnn1, adOpenForwardOnly, adLockReadOnly
rst1.MoveFirst
...........................................................
El Error que me sucede es que cuando llamo a una función, pasándole como parámetro el RecordSet rst1 entre otros más me dice:
Error: Se esperaba una matriz
Yo supongo que como el RecordSet tiene algunos valores que no están bien, como el RecordCount, la tabla tiene 2 registros y con el debug se ve que los ha leído, supongo que algunos de los valores que no están bien guardará relación con el mensaje de error emitido, ¿haber si me ayudáis a encontrar la causa del dichoso fallo?
Un saludo
David
La propiedad RecordCount del rst1 vale –1 y no se corresponde con el número de registros que hay en rst1, ¿cómo podría solucionar esto? Que tenga el valor de la cantidad de registros que hay en el rst1.
La bd es access2000, el programa lo estoy realizando con vb 6.0 Pro sobre un PC con XP Pro
.................Codigo...................
Dim sBase,sql As String
' Asignar el nombre de la base de datos
' (si la aplicación se ejecuta en el directorio raiz, quitar el \)
sBase = App.Path & "\BD\dbbajas.mdb"
' Crear los objetos
Set Cnn1 = New ADODB.Connection
Set rst1 = New ADODB.Recordset
Cnn1.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & sBase
sql = "SELECT * FROM Tcategorias ORDER BY nombre"
rst1.Open sql, Cnn1, adOpenForwardOnly, adLockReadOnly
rst1.MoveFirst
...........................................................
El Error que me sucede es que cuando llamo a una función, pasándole como parámetro el RecordSet rst1 entre otros más me dice:
Error: Se esperaba una matriz
Yo supongo que como el RecordSet tiene algunos valores que no están bien, como el RecordCount, la tabla tiene 2 registros y con el debug se ve que los ha leído, supongo que algunos de los valores que no están bien guardará relación con el mensaje de error emitido, ¿haber si me ayudáis a encontrar la causa del dichoso fallo?
Un saludo
David
Valora esta pregunta


0