Domino 9 und frühere Versionen > ND9: Entwicklung
Versionierug von Dokumenten (Nachfolgedokument/Archivdokument)
tabama:
Hallo,
in einer DB will ich "Versionen" von Dokumenten abspeichern. Das ist ja mit Kopien kein Problem. Die Herausforderung dabei ist aber, dass ein einmal erzeugter Link auch noch für die neuen Versionen funktionieren soll.
Lösung 1: Nachfolgedokument
Scheidet aus, da der Link ja dann auf das Ursprungsdokument verweist.
Lösung 2: Archivierung
Der aktuelle Stand des verlinkten Dokumentes wird in ein "Archivdokument" kopiert. Das aktuelle Dokument kann dann verändert werden. Der Link funktioniert immer noch.
Das Problem dabei ist aber, dass die neue "Version" irgendwann mal archiviert werden soll, ohne das es eine aktuelle Version davon geben soll. Der Link bezieht sich dann aber auf das "Archivdokument". Das soll aber nicht so sein.
Ich habe es mit einer separaten "Link-Ansicht" versucht in der nur die aktuellen Dokumente gefiltert sind. Der Link funktioniert aber immer noch, obwohl ja die UID der Ansicht eine andere ist.
Hat jemand eine Idee, wie ich das hinbekommen kann?
PS: Eine separate Achriv-DB möchte ich nicht, da ich die "archivierten" Dokumente noch in der gleichen DB haben will.
Tode:
Dass Notes -/ Domino eine eigene Versionsverwaltung hat, weisst Du aber? Also mit $VersionOpt und NotesUIDocument.SaveNewVersion und so...
Unabhängig davon: Du kannst ja die DocumentUniqe- ID Deines Dokuments ändern, wenn es ein ARCHIV- Dokument wird... Universalid ist read / write... Musst nur aufpassen: Unter Umständen dupliziert das das Dokument, und Du musst das Original danach wegschmeissen...
Peter Klett:
Wir haben für so etwas eine spezielle Datenbank gebaut, die sog. dynamischen Doklinks. Schließlich will man ja ein Mal auf genau dieses eine Dokument in der speziellen Version verlinken, und ein anderes Mal auf die jeweils aktuelle Version eines bestimmten Dokuments. Ich kann das bei Interesse gerne näher beschreiben, aber wg. Urlaub erst ab nächster Woche.
tabama:
--- Zitat von: Tode am 03.07.18 - 09:47:48 ---Dass Notes -/ Domino eine eigene Versionsverwaltung hat, weisst Du aber? Also mit $VersionOpt und NotesUIDocument.SaveNewVersion und so...
Unabhängig davon: Du kannst ja die DocumentUniqe- ID Deines Dokuments ändern, wenn es ein ARCHIV- Dokument wird... Universalid ist read / write... Musst nur aufpassen: Unter Umständen dupliziert das das Dokument, und Du musst das Original danach wegschmeissen...
--- Ende Zitat ---
Hallo Tode,
ja, dass hatte ich mir angeschaut. Aber ich will ja mit dem "Archivdokument" noch mehr machen (Status, continue=false usw.). So wie ich es sehe ist diese Versionsverwaltung nur eine Art Kopieren mit Referenz auf das ursprüngliche Dokument.
Das mit der UID hatte ich auch ausprobiert und war ganz überrascht, dass dadurch eine Kopie erzeugt wird. War mir bisher nicht bekannt. Das nutzt mir aber auch nichts. Wie du ja schon schreibst, muss ich dann ein Doc wegschmeißen. Der Endanwender soll aber keine Löschrechte bekommen.
Ich muss also irgendwie anders hinbekommen, dass der Link das Doc nicht mehr findet. Denn der Vorschlag von Peter hört sich zwar interessant, aber auch kompliziert an.
Vielleicht hat ja doch noch jemand eine Idee.
Danke
Martin
CarstenH:
Die Versionierung kann doch genau das, was du beschreibst. Du kannst dir sogar aussuchen ob die UNID auf das jeweils aktuelle zeigt oder gleich bleibt. Und selbst eine Version ohne Antworthierarchie bietet die Maske an.
Ob du später in den alten oder aktuellen Versionen noch irgendwelche Felder änderst interessiert Notes nicht - solange du es nicht mit der Maske versuchst, die die Versionsverwaltung macht. Aber dafür gibt es ja Agenten, Aktionen oder andere Masken.
Carsten
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln