У меня проблема с приложением VB6, использующим базу данных Access-MDB.
У клиента есть .MDB
и приложение .EXE
, расположенное на сетевом диске в сети Wi-Fi.На одной из рабочих станций, когда приложение вызывается с помощью ярлыка на .EXE
на сетевом диске, ошибок нет, но когда приложение установлено и работает локально на рабочей станции (при этом .MDB
остается в сетидиск) есть ошибка.
Вот соответствующая часть кода.Сообщение об ошибке «Невозможно обновить в это время. Повторите попытку позже.»
Private Sub UpdateHistory()
Dim ecnt As Integer
Dim bInTrans As Boolean
On Error GoTo HistErr
bInTrans = False
ecnt = 0
Randomize
DBEngine.SetOption dbLockDelay, 90 + Rnd * 60
DBEngine.Idle dbRefreshCache
SWWorkspace.BeginTrans
If action = 1 Then
historyfile.AddNew
historyfile("customerid") = gblpkey
historyfile("operatorid") = CurrentOperator
historyfile("type") = gbltype
historyfile("date") = Format(Now, "dd/mm/yyyy hh:mm:ss")
If gbltype = 1 Or gbltype = 2 Or gbltype = 6 Then
historyfile("rtype") = "Manual"
End If
Else
historyfile.Edit
End If
saveDate = historyfile("date")
historyfile("memo") = ptext
historyfile.Update
SWWorkspace.CommitTrans dbForceOSFlush
bInTrans = False
Exit Sub
HistErr:
ecnt = ecnt + 1
If ecnt > 10 Then
If bInTrans Then
SWWorkspace.Rollback
bInTrans = False
End If
Screen.MousePointer = vbDefault
MsgBox "Unable to update at this time. Try again later. "
Exit Sub
End If
sleep 1
DBEngine.Idle dbRefreshCache
Resume
End Sub