• Domingo 22 de Diciembre de 2024, 20:33

Autor Tema:  Error 91 Con Base Protegida  (Leído 1968 veces)

Marc

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Error 91 Con Base Protegida
« en: Jueves 1 de Abril de 2004, 16:26 »
0
: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.

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Error 91 Con Base Protegida
« Respuesta #1 en: Jueves 1 de Abril de 2004, 17:02 »
0
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.

Marc

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: Error 91 Con Base Protegida
« Respuesta #2 en: Viernes 2 de Abril de 2004, 15:33 »
0
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.