Domino 9 und frühere Versionen > Entwicklung
Etwas anderer Papierkorb gesucht
Don Pasquale:
Hallo LN-Fans,
ich bräuchte einen Rat, wie Ihr das gelöst habt.
Ich bin mit der lotuseigenen Papierkorb-Lösung nicht zufrieden.
Wenn ein Dokument gelöscht wird, dann soll es auch "nur" noch im Papierkorb zu sehen sein. (Windows-like)
Meine User wolllen nämlich Ordnung, und wenn etwas gelöscht ist, dann soll es nicht noch in anderen Views zu sehen sein.
(Korrekt, weil ergonomisch)
Zudem möchte ich den Papierkorb kontrollieren können, d.h. nur mit Admin Rechten zugänglich machen und die Dokumente endgültig aus der Db löschen können.
Gibt´s das schon ?
Habe ich ein existierendes Feature übersehen ?
Sachdienliche Hinweise
Don Pasquale
Performance:
Hallo
meinst du mit dem notes eigenen Papierkorb die soft deletion aus den db Eigenschaften ?
Bei Neuentwicklungen habe ich immer in einem header in den Forms verschiedene Felder drin - so auch das is_deleted Feld. Einfach ein flag 0=online , 1=deleted.
Bei allen Ansichten wird dann im select is_online !=1 reingeschrieben. Die gelösch markierten doks gehen dann in eine Admin Ansicht (geschützt durch die Rolle Admin) und der Admin kann diese endgültig löschen. Es gibt ja immer wieder Benutzer die versehentlich doks löschen, dann kann der Admin dieses wieder hervorbringen- geht schneller als wenn man das backup irgendwo einspielt und danach sucht.
Gruß
Don Pasquale:
Hi Performance,
Danke für Deine Anregung, JA, ich meinte die Soft Deletion.
kann ich das irgendwie ausschalten oder geht das nur
im DB Script mit
--- Code: ---Sub Querydocumentdelete(Source As Notesuidatabase, Continue As Variant)
continue = False
End Sub
--- Ende Code ---
Dann löse ich das eben über ein Flag.
Danke für den Tipp
Ciao
Don Pasquale
tower:
Hallo,
ich hatte das Problem wie folgt gelöst:
Sub Querydocumentdelete(Source As Notesuidatabase, Continue As Variant)
Dim session As New NotesSession
Dim ws As New notesuiworkspace
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim orgdoc As NotesDocument
Dim dc As notesdocumentcollection
Set db = session.CurrentDatabase
Set dc= Source.Documents
Set orgdoc=dc.getfirstdocument
Do
If Left(orgdoc.form(0),6) <> "DELETE" Then
Set doc=db.createdocument
Call orgdoc.copyallitems(doc)
doc.form = "DELETE" + doc.form(0)
doc.deleteam = Now
doc.deletefrom = session.username
Call doc.Save( True, False )
End If
Set orgdoc=dc.getnextdocument(orgdoc)
Loop Until orgdoc Is Nothing
continue=True
End Sub
Da die meisten View-Selection auf Formname basieren, verschwinden die Dokumente aus den Ansichten und als admin kann ich mir in aller Ruhe anschauen was wann gelöscht wurde und von wem.
tower:
nochwas:
das mit Softdeletion kann mann in den Datenbankeinstellungen (letztes Tab) abschalten.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln