Danke für den Tipp, ich habe den code nochmals ein wenig angepasst.
Nur ist es so beim testen Springt er mir immer in den error handler.
Db nicht gefunden, kann ich auch einfach weitermachen wenn die Db nicht lokal vorhanden ist.
Also ohne IF was kann ich Alternativ für ein Flag setzen Set oder Call geht nicht da Kompeliert er nicht. Hoffe ich krige das noch hin..
Sub Click(Source As Button)
Const DB_REMOVE_SERVER$ = ""
Const DB_DATABASE_SERVER$= "Mein Server"
Const DB_REMOVE_REPID$ = "0123456789012345"
Const DB_REPLICATE_REPID$ = "987654321"
On Error Goto ErrorHandler
Dim session As New NotesSession
Dim dbToRemove As NotesDatabase
Dim dbNewReplica As NotesDatabase
Dim strTitleDbToRemove As String
'Open Database by Replica ID
Set dbToRemove = New NotesDatabase("", "")
If Not dbToRemove.OpenByReplicaID(DB_REMOVE_SERVER, DB_REMOVE_REPID) Then
Error 1001, "Die zu löschende Datenbank kann nicht gefunden/geöffnet werden"
End If
strTitleDbToRemove = dbToRemove.Title
'Ask
If Not Msgbox ("Gewählte Datenbank: " & strTitleDbToRemove & Chr(10) _
& "Diese Datenbank wirklich dauerhaft löschen?",1 + 32, "Sicher?") = 1 Then Exit Sub
'Remove Database
Call dbToRemove.Remove
'Final msg
Msgbox "Datenbank <" & strTitleDbToRemove & "> wurde gelöscht !", 64, ""
'Open Db to replicate
Dim db As New NotesDatabase( "", "" )
If db.OpenByReplicaID( "MeinServer", "85255FA900747B84" ) Then
Print( db.Title & " was successfully opened" )
Else
Print( "Unable to open database" )
End If
Set db = session.CurrentDatabase
Set replica = db.CreateReplica( "", "" )
' Set new parameters in Notes.ini
Call session.SetEnvironmentVar( "Names", "names.nsf, DC.nsf", True )
GoOut:
Exit Sub
ErrorHandler:
Select Case Err
Case 4042: 'Database could not be deleted
Msgbox "Datenbank konnte nicht gelöscht werden, ein möglicher Grund: Ist gerade von einem anderen User geöffnet",48
Resume goOut
Case Else:
Msgbox "Fehler " & Err & " - " & Error$ & Chr(10) _
& "Fehler aufgetreten in Code-Zeile " & Erl, 48, "Laufzeitfehler"
Resume GoOut
End Select
End Sub