Visual Basic - error run time 3709

Life is soft - evento anual de software empresarial
   
Vista:

error run time 3709

Publicado por Facundo Martin (2 intervenciones) el 28/03/2008 15:52:09
Hola, tengo el problema con visual que cuando quiero acceder a la base de datos me salta el error "Run-time 3709" No se puede utilizar la conexion para realizar esta operacion.Esta cerrada o no es validad en este contexto

yo hago la siguiente conexion

Option Explicit
Global Base As New ADODB.Connection
Global Rsvigiladores As New ADODB.Recordset
Sub main()
With Base
.CursorLocation = adUseClient
.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "Horarios diarios de objetivos.mdb;Persist Security Info=False"
End With
End Sub

Sub vigiladores()
With Rsvigiladores
If .State = 1 Then .Close
.Open "Select * from Boulet", Base, adOpenStatic, adLockOptimistic
End With
End Sub

y eso es todo, la verdad q antes me conectaba pero tuve q formatiar la maquina e instale access 2002, uso una conexion con base de datos de acces 2000.
el q me pueda dar una mano, le estaria agradecido :)
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:error run time 3709

Publicado por ivan (8 intervenciones) el 28/03/2008 20:01:09
Tienes que referenciar los abjetos con la instrucción Set

Option Explicit
Public Base As ADODB.Connection
Public Rsvigiladores As ADODB.Recordset
Sub main()
Set Base = New ADODB.Connection <----------------
With Base
.CursorLocation = adUseClient
.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "Horarios diarios de objetivos.mdb;Persist Security Info=False"
End With
End Sub

Sub vigiladores()
Set Rsvigiladores = New ADODB.Recordset <---------------------------
With Rsvigiladores
If .State = 1 Then .Close <---- Esto nunca se producirá ya que acabas de referenciar el objeto recordset
.Open "Select * from Boulet", Base, adOpenStatic, adLockOptimistic
End With
End Sub
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