Domino 9 und frühere Versionen > Entwicklung
Dokument löschen ohne Berechigung in ACL
TomLudwig:
Hallo zusammen,
ich bräuchte eure hilfe...
Ich muss ein Dokument im Hintergrund per LotusScript löschen. Einige Benutzer sind Editoren (in Gruppe zusammengefasst) diese dürfen keine Dokumente löschen.
Das eine Dokument muss aber im Hintergrund gelöscht werden können.
Kann ich den Benutzern (Gruppen) das Löschrecht kurz geben, das Dok im Hintergrund löschen, und dann wieder weg nehmen?
Vielen DANK
koehlerbv:
Das geht natürlich nicht. Eine ACL-Änderung erfordert ja noch höhere Rechte als das Löschrecht.
Ein üblicher workaround ist, dem zu "löschenden" Dokument ein Flag zu geben und das Dokument darüber aus allen Ansichten auszuschliessen. Ein serverbasierender Agent (signiert mit ausreichenden Rechten) kann diese Dokumente dann periodisch physikalisch löschen.
HTH,
Bernhard
TomLudwig:
War mir irgendwie klar :(
Das ist aber schlecht, da die zu löschenden Dokumente eigentlich nur zu einer Überprüfung gehören, ob ein Dokument von einem anderen Benutzer gerade geöffnet ist und beim verlassen des geöffneten Doks soll das "Überprüf"-Dok im Hintergrund wieder gelöscht werden...
Was haltet ihr von dem Vorschlag:
Ich gebe den Benutzern das Löschrecht in der ACL und überprüfe in QueryDocumentDelete ob das Dokument von der Person gelöscht werden darf ?!?
koehlerbv:
Auch das ist ein gängiges Verfahren. In Deinem Kontext ist die Realisierung ja sogar bequem und ohne viel Aufwand machbar: Du brauchst ja nur prüfen, ob es sich um EINEN Dokumenttyp (Dein Lock-Dokument) handelt - wenn nicht, ist das Löschen immer verboten.
Bernhard
TomLudwig:
Stimmt, ich kanns ja im DatenbankScript hinterlegen.
Aber eine Frage noch ... Im Ereignis "QueryDocumentDelete" bekomm ich als Übergabeparameter eine NotesUIDatabase.
Ich möchte aber doch mein Document haben. Wie komm ich dann zu dem Dok ???
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln