Domino 9 und frühere Versionen > ND6: Entwicklung

nsf auf anderen server kopieren

<< < (4/4)

judicious:
LS ist zum Glück nicht 5% von der Prüfung. 90% und mehr ist alles Formeln. Darum mache ich mir nicht grosse sorgen. Trotzdem würde es mich freuen wenn ich das Script hinbekommen würde.


--- Code: ---Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim archiveDb As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument

Set db = New NotesDatabase ("mail1", "mail\x.nsf")

Set archiveDb = New NotesDatabase("mail2", "x.nsf")
archiveServer$ = archibeDb
archiveFile$ = "archive\"+db.FileName
If (Not(archiveDb.Open(archiveServer$,archiveFiles$))) Then
Set archiveDb = db.CreateCopy (archiveServer$,archiveFile$)
End If
Set collection = db.AllDocuments
Set doc = collection.GetFirstDocument()
While Not(doc Is Nothing)
Call doc.CopyToDatabase( archiveDb )
Set doc = collection.GetNextDocument(doc)
Wend
End Sub

--- Ende Code ---

Dieser Code kopiert mir etwas. Nur finde ich das nsf danach nirgends.

Axel:
Hier ist der nächste Hund begraben.

Set archiveDb = New NotesDatabase("mail2", "x.nsf")
archiveServer$ = archibeDb
archiveFile$ = "archive\"+db.FileName
If (Not(archiveDb.Open(archiveServer$,archiveFiles$))) Then
   Set archiveDb = db.CreateCopy (archiveServer$,archiveFile$)
End If

Das habe ich vorhin übersehen.

In der Variablen archiveServers$ ist mit Sicherheit kein Servernamen enthalten. Außerdem ist hier auch ein Schreibfehler drin. Das Ganze muss so aussehen:

archiveServer$ = archiveDb.Server

Ich würde dir auch empfehlen in den [Options]-Abschnitt Option Declare aufzunehmen. Dann fallen dir nicht deklarierte Variablen sofort auf. Auch fehlt mir eine vernüftige Fehlerbehandlung.
Siehe dazu auch hier: http://www.atnotes.de/index.php?board=3;action=display;threadid=11980;start=0

Axel

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln