Domino 9 und frühere Versionen > ND6: Entwicklung

nsf auf anderen server kopieren

<< < (3/4) > >>

Axel:
Wo initialisierst du denn die Variable db ?


--- Code: ---...
archiveFile$ = "archive\"+db.FileName
If (Not(archiveDb.Open(archiveServer$,archiveFiles$))) Then
Set archiveDb = db.CreateCopy (archiveServer$,archiveFile$)
End If
Set collection = db.AllDocuments
...

--- Ende Code ---

Axel

judicious:

--- Code: ---Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim NotesDatabase As NotesDatabase
Dim archiveDb As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Set NotesDatabase = New NotesDatabase (server1$, dbfile$)
Set archiveDb = New NotesDatabase(server2$, dbfile$)
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 ---

Axel:
Ja und?

Du die Frage immer noch nicht beantwortet. Ulrich (eknori) hat weiter oben auch schon mal darauf hingewiesen.

Mir fehlt die Initialisierung der Variable db. So in der Art:

Set db = session.CurrentDatabase


Axel

judicious:
Ach so das meint ihr. Sorry wie schon gesagt ich blicke da absolut nicht durch, und ich muss das als Prüfungsaufgabe bis morgen Abend fertig haben  >:( ???


--- Code: ---Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim NotesDatabase As NotesDatabase
Dim archiveDb As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Set NotesDatabase = New NotesDatabase (server1$, dbfile$)
Set db = NotesDatabase
Set archiveDb = New NotesDatabase(server2$, dbfile$)
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 ---

Axel:

--- Zitat von: judicious am 14.03.06 - 09:16:47 ---Ach so das meint ihr. Sorry wie schon gesagt ich blicke da absolut nicht durch, und ich muss das als Prüfungsaufgabe bis morgen Abend fertig haben >:( ???


--- Code: ---Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim NotesDatabase As NotesDatabase
Dim archiveDb As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Set NotesDatabase = New NotesDatabase (server1$, dbfile$)
Set db = NotesDatabase
Set archiveDb = New NotesDatabase(server2$, dbfile$)
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 ---

--- Ende Zitat ---

Was soll das denn? Warum setzt du erst die Variable NotesDatabase und weisst sie dann der Variable db zu? Warum arbeitest du denn nicht gleich mit NotesDatabase weiter?

BTW: eine Variable genauso zu nennen wie eine Klasse geht mit Sicherheit irgendwann in die Hose, aber gewaltig.

Die bessere Alternative wäre das hier:

...
Dim session As New NotesSession
Dim db As NotesDatabase
Dim archiveDb As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument

Set db = session.CurrentDatabase

Set archiveDb = New NotesDatabase(server2$, dbfile$)
...

Der Rest sieht auf den ersten Blick ganz brauchbar aus.

Axel

PS:
Sei  mir bitte nicht böse, aber ich werde das Gefühl nicht los, dass dir die absoluten Grundlagen fehlen. Und so willst du die Prüfung schaffen. Ich sehe da etwas schwarz.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln