Wirkungsweise expirationdate und systemFlags= 2049 (revisionssicher)

  • Hallo,

    bei uns kamen jetzt nach längerem Arbeiten und Setzen mit systemFlags und Revisionssicherheit Fragen auf.

    Wenn wir zum Beispiel von extern Dokumente übergeben, die revisionsicher sein sollen, dann haben wir systemFlags auf 2049 (2048+1) gesetzt und wegen der Pflicht Dokumente 11 Jahre aufzuheben, haben wir zusätzlich das expirationdate auf z.B. 4018 Tage gesetzt.


    Beispiel 2 in der Doku (11 Jahre revisionssicher setzen)

    Dokumentation agorum core


    Jetzt steht aber in der Dokumentation:


    Löscht Objekte anhand des Ablaufdatums.

    • Der Expiration Agent führt das Löschen aus.
    • Das System löscht revisionssichere Dokumente mit den Systemflags "NOTDELETE" und "NOTDELETELOCK" NICHT.
    • Selbst bei einem alten Back-up löscht das System die zu löschenden Dokumente direkt.

    Das hieße ja, wenn die 11 Jahre rum sind, dann würde nach unserem Verständnis an den Dokumenten das systemFlags 2049 weggenommen und das hieße, dass die vorhandenen Dokumente "selbstständig" durch den Expiration Agent gelöscht werden. :?:

    Das ist ja vielleicht nicht immer so gewollt oder? :/


    Vielleicht könnte das Thema im Round Table nochmal genauer besprochen werden.


    Liebe Grüße

    Katrin Scheller

  • Oh, gut dass wir drüber reden...

    Das heißt, das expirationData hat eigentlich nichts mit der Ablaufdauer der Revisionssicherheit zu tun? Wie können wir dann programmatisch die Dauer angeben, wie lange ein Dokument revisionssicher gehalten werden soll? Oder sind das immer fix 10 Jahre?


    Viele Grüße

    Manuel

    • Offizieller Beitrag

    Hi zusammen,


    gut, dass du nochmal Gegenfragen gestellt hast Majob. Ich muss zurück rudern! Es tut mir echt Leid, dass ich euch die Tage falsch geantwortet habe! Ich hatte ein ganz anderes Verständnis von unseren Systemflags!


    Lasst mich euch korrekt abholen! Im Anschluss schaue ich auch nochmal unsere Dokumentation an, und korrigiere diese:


    • Annahme 1:
      • Ein Dokument besitzt keine Systemflags, aber ein Ablaufdatum
      • Ergebnis: Sobald das Ablaufdatum abgelaufen ist, greift ein Cronjob (expirationAgent), der das Dokument löscht.
    • Annahme 2:
      • Ein Dokument ist Systemflags-technisch sehr strikt gesperrt und hat KEIN Ablaufdatum
      • Ergebnis: Das Dokument behält auf ewig seine Systemflags, weil diese nicht entfernt werden können
    • Annahme 3:
      • Ein Dokument ist Systemflags-technisch sehr strikt gesperrt und hat EIN Ablaufdatum
      • Ergebnis: Wenn das Ablaufdatum abgelaufen ist, können die Systemflags abgeändert werden! Selbst "NOTDELETE" und "NOTDELETELOCK". Das Dokument wird nicht automatisch gelöscht!! Bedeutet, dass die Systemflags durchaus aktiv sind. Das Dokument kann, wegen diesen also nicht gelöscht werden, aber ihr könnt als Admins / Entwickler die Flags zu, Beispiel entfernen oder abändern. Das liegt am abgelaufenen Ablaufdatum.


    Mein Kollege oliver.schulze hat folgenden Tipp mir für euch mitgegeben:

    Zitat

    Mal angenommen ein Objekt ist SystemFlags-technisch sehr strikt gesperrt und hat ein Ablaufdatum. Sobald das Ablaufdatum erreicht/überschritten wurde, kann man das Flag wieder entfernen, sprich ab dann werden die SystemFlags wieder änderbar.


    Solange aber das Ablaufdatum erreicht wurde und das Systemflag noch drauf ist, kann der ExpirationAgent das Objekt noch nicht löschen, erst wenn das SystemFlag entfernt wurde (was ja nur geht, wenn das Ablaufdatum überschritten ist).


    Was auch noch geht: Das Ablaufdatum kann auch im "geschützten" Zustand verändert werden, aber nur zu einem höheren Ablaufdatum, nicht zu einem niedrigeren. Das heißt, man könnte einen "Worker" machen, der alle Objekte sucht, deren Standard-ExpiratiomDate überschritten ist und die via SystemFlag geschützt sind. In diesem Worker könnte man dann das SystemFlag entfernen und das normale Ablaufdatum auch entfernen.

Jetzt Teil von agorum Community werden!

Noch kein Benutzerkonto? Registriere dich kostenlos und werde Teil von agorum Community!