Visual Basic - URGENTE..ERROR 91 CON EL OBJETO PLEASE

Life is soft - evento anual de software empresarial
 
Vista:

URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por EDGAR (16 intervenciones) el 24/11/2004 15:59:15
URGENTE..ERROR 91 CON EL OBJETO PLEASE
Hola colega, necesito de tu ayuda urgentemente. Estoy realizando una aplicacion hecha en Visual Basic 6.0 la cual esta programa bajo DAO con una base de datos en Access. A la hora de correr el programa en monousuario no presenta ningun problema, funciona perfectamente en la consulta y actualización, el problema radica cuando instalo el sistema en el servidor para ejecutarlo en la red. El modo de hacer esta operacion, como es la primera vez que lo hago, es conectar a una unidad de red la carpeta compartida que se instalo en el server y de alli hago el llamado desde cada usuario a esa unidad de red para acceder al sistema. No se si sea la forma correcta de hacerlo pero agradeceria una explicacion si existe una mejor opcion. Pense en realizarlo por DSN pero no se como crear la conexion en DAO. La codificacion que tengo es la siguiente:

Public DATA As DAO.Database
Public RANGO As DAO.Recordset

Public Sub Abrir()
Set DATA = OpenDatabase(App.Path & "\CEDULACION.mdb")
'''' Set DATA = OpenDatabase(".\CEDULACION.mdb")
End Sub

Private Sub Form_Load()
Set RANGO = DATA.OpenRecordset("RANGOS", dbOpenTable) AQUI ME DA EL ERROR
''' Set RANGO = DATA.OpenRecordset("select * from RANGOS", dbOpenTable)
End Sub

El error que me da es a la hora de abrir el formulario donde carga el recordset para RANGO, el error que me da es el siguiente: "Error 91 en tiempo de ejecución: La vairable de tipo object o la variable de bloque whith no esta establecida"
Agradezco enormemente tu ayuda de antemano colega.... Gracias =)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Marco (6 intervenciones) el 24/11/2004 23:43:18
Es simple hermano, el error te sale pq aun no lo has instansiado pues... es asi mira:
st RANGO = New dao.recordset 'Y luego recien lo asignas..
Set RANGO = DATA.OpenRecordset("select * from RANGOS", dbOpenTable)
haber pueba con eso....espero q te sirva...
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Miguel Fominaya (9 intervenciones) el 24/11/2004 23:50:50
Esta bien instanciado, siento corregirte Marco. El problema es tan obvio que me da hasta corte responderte, amigo, Cuando se carga un Form, lo primero que se ejecuta es el evento Load, lo cual, segun tu codigo, estas abriendo antes el recordset que la base de datos, ¿lo ves? El error que te da es que la variable DATA no esta todavia instanciada. Ya que se ejecuta el Load antes que la funcion Abrir.
Chao.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Marco (6 intervenciones) el 24/11/2004 23:57:58
Pues permiteme hermano q vuelva a ratificar mi posiscion, el hecho q declares la variable no significa q la estas instanciando, el instanciar significa crear un NUEVO OBJETO de x tipo... y es mas creo q la conexion es imposible pq no esta instanciada....
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Miguel fominaya (9 intervenciones) el 25/11/2004 00:10:11
Pues va a ser que lleves razón hermano. En el codigo EDGar hay dos errores, el ya menciona antes, y efectivamente (no me di cuenta por que me deje llevar por el primer que vi) las dos variables no estan instanciadas, la palabra clave para crear la instancia de un objeto es "new" entonces, en la declaraciones de nuestro amigo deberian ser

Public DATA As New DAO.Database
Public RANGO As New DAO.Recordset

Gracias por tu corrección Marco. Tratamos entre todos de aprender para ser mejores. Chao.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Marco (6 intervenciones) el 25/11/2004 00:17:21
No te preocupes Miguel, y tu acotacion es importante tambien....es preferible usar algo generico para la conexion de la Bd, o la ruta...com tambien puedes tener la ruta en un Notepad, y solo llamarlo..y sacar lo contenga nada mas...asi puedes cambiar no solo de ruta, sino tambiend e gestior de Bd......y claro tratamos de aprender todos, tambien estoy en un problema, q no se si ya lo leiste.... se trata de: Cabecera de un felxgrid, pero vertical....si llegas averiguar algo, o tener una solucion me pasas la voz, oki???
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Miguel Fominaya (9 intervenciones) el 25/11/2004 00:22:25
Ya lo lei pero que yo sepa, segun mis conocimiento del FlexGrid, creo que no se puede poner la cabecera en vertical, aunque hay controles en el mercado que si lo hacen, como los de sheridan, pero son caros. El Grid de sherida hace virguerias y maravillas pero cuesta dinero. La solución sin coste de dinero pero si de tiempo, es hacerte un control tipo Grid, y crearte el drid a tu medida, pero claro, hablamos de algunas horas de trabajo. Chao amigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por Marco (6 intervenciones) el 25/11/2004 01:05:49
Ok miguel muchas gracias por la sugerencia...

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por EDGAR (16 intervenciones) el 25/11/2004 02:01:00
GRACIAS POR LA AYUDA COLEGAS, LO PROBARE A VER SI ME FUNCIONA PERFECTAMENTE EL SISTEMA.. ESTAMOS A LA ORDEN PARA CUALQUIER AYUDA.. GRACIAS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por EDGAR (16 intervenciones) el 25/11/2004 01:58:06
NO COLEGA NO ES ESE EL PROBLEMA YA QUE LA FUNCION ABRIR LA LLAMO APENAS SE EJECUTA EL SISTEMA EN EL FORMULARIO MDI, Y LUEGO QUE CARGA LA BASE DE DATOS ES CUANDO SE LLAMA A ESE FORMULARIO PARA UTILIZAR EL RECORDSET QUE ES ALLI DONDE SE PRESENTA MI PROBLEMA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por miguel fominaya (9 intervenciones) el 25/11/2004 10:49:34
Vamos a ver amigo. Si la funcion Abrir esta fuera del formulario, debes especifiarlo, si esta dentro del formulario, cuando la llamas , se ejecutara antes el Form_Load que la funcion Abrir, ¿nos queda claro eso? Entonces, si la funcion Abrir esta fuera del Form y la llamas primero antes de abrir el Form del recordset, el problema era que no instanciabas las declaraciones con la palabra clave "new"
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por EDGAR (16 intervenciones) el 25/11/2004 15:20:40
GUAO COLEGA SE ME PRESENTO UN PROBLEMA Y ES QUE NO SE ME PERMITE HACER LA DECLARACION DE ESA MANERA:
PUBLIC RANGO AS NEW DAO.RECORDSET Ò
SET RANGO = NEW DAO.RECORDSET

NO ME LO PERMITE DE NINGUNA DE LAS DOS MANERAS.. AGRADEZCO SI PUEDES VERIFICAR TU FUENTE A VER COMO ES LA MANERA CORRECTA... GRACIAS COLEGA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE..ERROR 91 CON EL OBJETO PLEASE

Publicado por EDGAR (16 intervenciones) el 25/11/2004 15:36:33
OJO VERIFIQUE EN MIS FUENTES Y EN ADO SI PUEDE REALIZARSE DE LA SIGUIENTE FORMA:

PUBLIC RANGO AS NEW ADODB.RECORDSET

PERO EN DAO NO PUEDE YA ME QUE PRESENTA OTRAS PROPIEDADES... AGRADEZCO DE TU AYUDA COLEGA YA QUE MI PROYECTO LO REALIZO EN DAO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar