Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

run-time-error-3705

Estas en el tema de run-time-error-3705 en el foro de Visual Basic clásico en Foros del Web. Que tal compañeros, me pueden ayudar con este error, tengo una serie de text que me los guarda en una tbla de sql y esa ...
  #1 (permalink)  
Antiguo 07/05/2008, 17:58
der
 
Fecha de Ingreso: mayo-2008
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
De acuerdo run-time-error-3705

Que tal compañeros, me pueden ayudar con este error, tengo una serie de text que me los guarda en una tbla de sql y esa misma me la muestra en un msnflexgrid y quiero hacer modificar y eliminar registros desde msnflexgrid pero me marca el error "operation is not allowed when the objects is open en la "Sub cargar_grilla"....
Les dejo el code para que sea mas entendible....

Public Sub cargar_grilla(strquery)
Gd1.Rows = 1
Dim rs As New ADODB.Recordset
***cnnSQLServer.Open***AQUI ME MARCA EL ERROR
rs.ActiveConnection = cnnSQLServer
rs.Source = strquery
rs.Open

rs.MoveFirst
Do
Gd1.AddItem rs!idFam & vbTab & rs!idNomina & vbTab & rs!idParentesco & vbTab & rs!Nombre & vbTab & rs!Direccion & vbTab & rs!Colonia & vbTab & rs!Telefono & vbTab & rs!idActividad & vbTab & rs!idSexo & vbTab & rs!datNacimiento
Gd1.RowData(Gd1.Rows - 1) = rs!idFam
rs.MoveNext
Loop Until rs.EOF = True
cnnSQLServer.Close
Set rs = Nothing


End Sub


Private Sub CmdEliminar_Click()

Call mostrar_Familiar(Gd1.RowData(Gd1.Row))
If Val(Gd1.RowData(Gd1.Row)) = 0 Then
Exit Sub
End If

Dim rsu As New ADODB.Recordset
Call MsgBox("Está seguro que desea eliminar este Familiar", vbYesNo, "Atención")

cnnSQLServer.Open
strquery = ("delete from Familiares5 where idfam=" & Val(Gd1.RowData(Gd1.Row)))
cnnSQLServer.Execute (strquery)

Call cargar_grilla("Select * from Familiares5")

Call MsgBox("No se puede eliminar el Familiar verifique con el Administrador de Sistemas", , "Atención")

End Sub

Call MsgBox("Está seguro que desea eliminar este Familiar", vbYesNo, "Atención")

cnnSQLServer.Open
strquery = ("delete from Familiares5 where idfam=" & Val(Gd1.RowData(Gd1.Row)))
cnnSQLServer.Execute (strquery)

Call cargar_grilla("Select * from Familiares5")

Call MsgBox("No se puede eliminar el Familiar verifique con el Administrador de Sistemas", , "Atención")

End Sub

GRACIAS............
  #2 (permalink)  
Antiguo 08/05/2008, 01:07
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: run-time-error-3705

Hola

Antes de abrir la conexión, comprueba si ya está abierta:

If cnnSQLServer.State = 1 Then cnnSQLServer.Close
cnnSQLServer.Open


Aunque si la conexión es pública, no es necesario que vuelvas a abrirla, puedes eliminar esa línea.

Un saludo
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.