SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Marc en Jueves 1 de Abril de 2004, 16:26

Título: Error 91 Con Base Protegida
Publicado por: Marc en Jueves 1 de Abril de 2004, 16:26
:hola: Hola a todos,
estoy haciendo una aplicación que consiste en coordinar VB con una b.datos access (Dao), la base

tiene contraseña y las tablas se abren bien, el problema es que se me cae en la siguiente instrucción:

If Not Data1.Recordset.EOF Then

Con el sgte. mensaje:

"Error '91' en tiempo de ejecución:
Variable de tipo Object o la variable de bloque With no está establecida"

Yo sé que el error 91 indica que la consulta en cuestión estaría nula, el problema es que antes de ponerle contraseña a la data, el código funcionaba bien.

Por fa, respondame alguien que sepa lo que pasa.

Gracias.
Título: Re: Error 91 Con Base Protegida
Publicado por: Brroz en Jueves 1 de Abril de 2004, 17:02
Hola Marc.

Habría que echarle un ojo al código. Que una variable de objeto (en este caso Data1 o Recordset) no refencie ningún objeto, se puede deber a diversas causas (la variable no se ha inicializado, se le ha asignado el valor nothing, se le ha asignado otra variable de objeto con valor nothing).Tal vez tengas que eliminar algún 'On Error resune next' que seguro que tienes por algun sitio en el que algo importante está cascando y no te enteras ...

Chao.
Título: Re: Error 91 Con Base Protegida
Publicado por: Marc en Viernes 2 de Abril de 2004, 15:33
Hola Brroz
solucione el problema, (eso creo) así quedo el codigo:

==============================0
dim vaCont as integer
vaCont=1
Set nC = db.OpenRecordset("Select ncliente From Comuna ORDER BY ncliente", dbOpenDynaset)
     
     If db.Recordsets.Count > 1 Then
        If Not IsNull(nC(0)) Then
            nC.MoveLast
            Text1.Text = nC(0) + 1
         Else
            Text1.Text = vaCont
        End If
    Else
            Text1.Text = 1
    End If

Close All
=============================0
Donde dice
 If db.Recordsets.Count > 1 Then
decía
If Not Data1.Recordset.EOF Then

La tabla Comuna está sin registros, o sea mi consulta encontraba un solo registro que contenía un valor CERO.
Así que me decía "No hay ningun registro activo....."
por eso necesitaba algo como

If db.Recordsets.Count > 1 Then

Habré solucionado el problema (al menos cuando lo corro el Text1.text queda en uno.

Gracias y salu2.