Das Notes Forum

Domino 9 und frühere Versionen => ND6: Administration & Userprobleme => Thema gestartet von: m3 am 11.02.09 - 14:37:00

Titel: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 11.02.09 - 14:37:00
Liebe Kolleginnen und Kollegen,

kennt Ihr ein Tool/Script, mit welchem ich (rekursiv) alle Datenbanken in einem Verzechnis auf einem Server auf die lokale Festplatte bzw. auf einen anderen Server kopieren kann, ohne dabei auf Filesystemebene zu kopieren?

Es geht ganz legal um das automatisierte Anlegen einer Testumgebung, die 1:1 aus der Produktion kopiert werden soll (snapshot).
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: eknori am 11.02.09 - 14:47:59
erster Gedanke:

http://www.bruceelgort.com/blogs/be.nsf/plinks/BELT-6ZHNSX

Das ganze dann über ein kleines Script, welches die entsprechenden Consolen Commands absetzt.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 11.02.09 - 14:53:16
Ja, aber Du hast keine Kontrolle/Info darüber, was er gerade macht, wo er beim Kopieren ist, die Konsole ist im Prinzip tot und im "Batch" für >3 DBs ist das nicht mehr wirklich brauchbar.
Leider.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: eknori am 11.02.09 - 14:59:07
CreateCopy method  der NotesDatabase Class ??
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 11.02.09 - 15:48:12
Ja, das kopiert aber keine Dokumente und vor allem keine Profildokumente mit.

Ich hab grad einen Agenten geschrieben, der die DBs aus der Catalog.nsf ausliest, mit CreateCopy kopiert und dann "händisch" die Dokumente und Profildokumente kopiert.
Mich wunderts nur, dass es das noch nicht "fertig" gibt.

BTW: Gibts eine Möglichkeit, mit Lotusscript eine Liste ALLER Profildokumente zu bekommen?
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: eknori am 11.02.09 - 15:57:02
NotesNoteCollectiuon , SelectProfiles property 
Indicates whether the collection contains profile documents.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 11.02.09 - 15:58:52
Noch besser: NotesDatabase.GetProfileDocCollection.

Bernhard
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 11.02.09 - 16:16:05
@Bernhard:
Zitat
Given a profile name, returns a collection of Profile documents that match the name.

Mein Punkt ist, dass ich nicht unbedingt zu allen Profildokumenten in allen Datenbanken weiß, wie der "Profilname" lautet.
Und damit bekommst Du nicht "alle" Profildokumente, sondern nur die Profildokumente, deren Profilnamen Du weisst - das ist alles nicht das, was ich brauche.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 11.02.09 - 16:53:13
Ich bin ein Lurch! Man sollte nicht mehrere Dinge gleichzeitig machen ...

Entschuldige bitte, Martin.

Bernhard

PS: Vielleicht war's auch der Pawlowsche Reflex - ich habe die Methode heute zweimal eingesetzt, und als ich dann "Profildokumente" las, konnte ich nur noch hecheln  ;D  Und dann das falsche apportieren  ;D
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 11.02.09 - 16:54:53
Kein Thema. Wer ohne Fehl ist, werfe den ersten Stein.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 11.02.09 - 16:58:15
... werfe den ersten Stein.

Aber keine Frauen!! Auch nicht solche mit Bart! Und auch nicht, wenn jemand "Jehova" gesagt hat  ;D  Au, aua, aaah ...
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: Fedaykin am 11.02.09 - 18:01:29
Hi m3

Vielleicht geht es ja die Profile über eine NotesNoteCollection zu holen.
notesNoteCollection.SelectProfiles = flag

Gerade gelesen wohl erst ab 6.5.

Gruss
Remo
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 12.02.09 - 17:43:25
Remo, GRANDIOS!

Danke für den Tipp, die Methode kannte ich noch nicht. Mit
Code
	Dim nc As NotesNoteCollection
	Dim nid As String
	Set nc = src.CreateNoteCollection(False)
	nc.SelectProfiles = True
	Call nc.BuildCollection
	nid = nc.GetFirstNoteId
	While(nid <> "")
		Set doc = src.GetDocumentByID(nid)
		Call doc.CopyToDatabase( dst )
		nid = nc.GetNextNoteId(nid)
	Wend
kann ich wunderbar alle Profildokumente kopieren.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 12.02.09 - 17:57:29
Jetzt muss ich - bei aller Anerkennung und Wertschätzung von Remo - aber Ulrich erwähnen: Genau das hat er bereits in Post #5 geschrieben, und ich Vollpfosten habe daraufhin meinen idiotischen "Verbesserungsvorschlag" sinnfrei in die Runde geworfen.

Bernhard
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 12.02.09 - 17:59:08
/me wischt sich die Paradeiser aus den Augen und wird Ulrich beim nächten Treffen ein Bierchen als Trostpflaster spendieren.
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 12.02.09 - 18:12:43
Das werde ich dann auch für Dich tun - als Versuch einer Entschädigung für Dumm-Posting #6.

Vorausgesetzt natürlich, Du schaffst es rechtzeitig bis zum Treffen  ;D Ich sag nur "Kulmbach - 1 Kilometer"  ;D

Bernhard
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: m3 am 12.02.09 - 22:05:31
Da hat Susanne navigiert, da kann ich nix für!  ;D
Titel: Re: Automatisch alle DBs in einem Ordner rekursiv kopieren
Beitrag von: koehlerbv am 12.02.09 - 22:14:55
Okay, das Argument zählt. Im Kommunbräu wart Ihr dann ja die ersten  ;)

Bernhard