Foros del Web » Programación para mayores de 30 ;) » Programación General »

Cómo cierro una aplicación? Vb.

Estas en el tema de Cómo cierro una aplicación? Vb. en el foro de Programación General en Foros del Web. Fijense que tengo un sencillo problema que no se como resolver.. Al momento de querer agregar un registro a mi Base de datos me aparece ...
  #1 (permalink)  
Antiguo 17/05/2004, 10:32
 
Fecha de Ingreso: diciembre-2003
Ubicación: D.F.
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Pregunta Cómo cierro una aplicación? Vb.

Fijense que tengo un sencillo problema que no se como resolver..
Al momento de querer agregar un registro a mi Base de datos me aparece el siguiente error.

***La operación solicitada por la aplicación no está permitida si el objeto esta abierto


Private Sub Form_Load()
cn.Provider = "microsoft.jet.oledb.4.0" 'Cómo cierro la aplicación?
cn.ConnectionString = "monitor2.mdb"
cn.Open
rs.Open "select * from monitor", cn, adOpenKeyset, adLockOptimistic
On Error GoTo Error
rs.MoveFirst
On Error GoTo 0
refrescar
desabilitar
Exit Sub
Error:
End Sub

Ojala y me puedan ayudar.
  #2 (permalink)  
Antiguo 17/05/2004, 15:56
 
Fecha de Ingreso: abril-2004
Mensajes: 20
Antigüedad: 20 años
Puntos: 0
Creo que tu problema puede venir desde antes, antes me paso algo similar y era porque usaba el mismo recordset (para ahorrar recursos) en varias ocaciones sin antes inicializarlo (set rs = new ado.recordset)

Intenta inicializandolo o bien para estar seguro imprime entre
cn.Open
debug.print rs.source
rs.Open...

Esto imprimira en la ventana de debug el comando que fue asociado antes al recordset si es que tiene uno.

Saludos.
  #3 (permalink)  
Antiguo 17/05/2004, 20:27
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
Mi humilde opinion es que estas usando el tipo incorrecto de CursorType

Pienso que en lugar de abrir tu recordset como "adOpenKeyset" deberias abrirlo como "adOpenStatic"

prueba asi y puede que funcione.
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #4 (permalink)  
Antiguo 18/05/2004, 09:45
 
Fecha de Ingreso: diciembre-2003
Ubicación: D.F.
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Que creen no he podido resolver mi problema le he cambiado ya el "AdopenKeyset" por el "Adopenstatic" y no me dio buen resultado.
Mi recordsert lo tengo inicializado como dim rs as new adodb.recordset

Y por último he intentado cerrar los objetos
Private Sub Form_Load()
cn.Provider = "microsoft.jet.oledb.4.0" 'Esta linea es la qeu el depurador me marca el error.
cn.ConnectionString = "monitor2.mdb"
cn.Open
Debug.Print rs.Source
rs.Open "select * from monitor", cn, adOpenKeyset, adLockOptimistic
If Not (rs.EOF And rs.BOF) Then
rs.MoveFirst
refrescar
desabilitar
rs.Close 'Se termina de usar se cierra
Else
rs.Close 'Si no encuentro registros se cierra
End If
End Sub

**Pero ahora el error que me marca es la operación solicitada por la aplicación no está permitida si el objeto está cerrado.
De que manera puedo resolver todo esto?
Agradesco de antemano su ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:29.