Visual Basic - No cierra la base!?!? Ayuda

Life is soft - evento anual de software empresarial
 
Vista:

No cierra la base!?!? Ayuda

Publicado por alberto (35 intervenciones) el 21/06/2007 16:18:55
Trabajo en un sistema multiusuario hecho en VB6 con bases de datos Accessmanajados como objetos DAO, y el administrador (solo para él) tiene la opcion de compactar la base al salir del sistema , (teoricamente es el ultimo en cerrar la sesion). Cierro la bas econ el metodo Close y luego al intentar aplicar DBEngine.CompactDatabase ..... me dice que la base esta "Abierta en modo exclusivo por el usuario xxxx en la maquina xxxxx" y no comprendo donde me estoy equivocando. esta es la sub de salida

Private Sub cmdSalir_Click()

On Error GoTo ERR_SALIR
Set db = DBEngine.OpenDatabase(dbn)
Set rs11 = db.OpenRecordset("trabajo", dbOpenDynaset)
Dim Salir As Boolean
If Form2.Label3.Caption <> "" Then
Salir = False
With rs11
.MoveFirst
Do Until Salir
.FindNext "usuario = '" & Form2.Label3.Caption & "'"
If IsNull(.Fields("horasalida")) Then
.Edit
.Fields("horasalida").Value = Time
.Fields("fechacierre").Value = Date
.Fields("TIPOCIERRE").Value = "normal"
.Update
Salir = True
End If
Loop
End With
End If
rs11.Close
db.Close

Set rs11 = Nothing
If respu = 6 Then
DBEngine.CompactDatabase "f:\datosa.mdb", "f:\datosa1.mdb"
'compactar = Compactar_Base("f:\datosa.mdb", "f:\datosa1.mdb")
End If
Unload Me
ERR_SALIR:
MsgBox "Error al salir " & Err.Description, vbCritical, "No se compactara la base"
Unload Me
End Sub
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