Das folgende Problem dürfte vielen MEDISTAR-Anwendern bekannt sein: In der Mittagpause soll eine Datensicherung erfolgen. Damit alle ISAM-Datenbanken gesichert werden können, müssen alle Tasks geschlossen sein.
Das folgende VB-Skript ermöglicht von einem beliebigen PC aus zu prüfen, ob es geöffnete Tasks im Netzwerk gibt. Dazu versucht es, die Datei «psync.ism» zu kopieren. Solange ein Task geöffnet ist, wird der Zugriff verweigert.
'Bitte in nachfolgender Zeile den Pfad anpassen.
testFile = "\\Server\d%\MEDISTAR\PDATEN\PSYNC.ISM"
strInfo = "Prüfung auf offene MEDISTAR-Tasks"
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objFS = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
If objFS.FileExists(testFile) Then
Set objFile = objFS.GetFile(testFile)
objFile.Copy(Left(objFile.Path,InStrRev(objFile.Path, "\")) & "PSYNC.BAK")
If Err.Number > 0 Then 'Zugriff verweigert'
MsgBox "Es ist noch mindestens ein Task geöffnet!", 48, strInfo
Else
WshShell.Popup "MEDISTAR wurde überall beendet.", 3, strInfo
End If
Else
MsgBox testFile & vbCrLf & "Die Datei wurde nicht gefunden.", 16, strInfo
End If
Kennen Sie eine andere Möglichkeit?
Hallo,
wir gehen einen anderen Weg: um 23:30 Uhr werden an allen Arbeitsstationen der Befehl logoff.bat mit dem einzelnen Befehl shutdown -l als „Geplanter Task“ ausgeführt. Dadurch wird sichergestellt, dass die Datensicherung über Nacht immer durchlaufen kann, da alle Workstations um diese Zeit dann abgemeldet sind.
Hoffentlich wird das Problem der geöffneten Dateien endlich durch die Umstellung auf SQL und die neue DALE-UV Datenbank (Update Juli 2011) endlich behoben werden.