ModifyDocumentResetFile

ModifyDocumentResetFile
Main
History-Relevant
Rückgabewert
 
RET
   
Parameterliste
DocumentId
IN
LONG_NUMERIC_IDENTIFIER
>DOCUMENT.DOCUMENTID
FileId
IN
LONG_NUMERIC_IDENTIFIER
>FILE.FILEID
Kurzbeschreibung:
Dieser Service verändert einen DOCUMENT/VERSION-Eintrag indem ein bestehender Eintrag in der Tabelle FILE angepasst wird.
Zuerst wird das Document geladen. Anschliessend wird die korrekte Version zugeladen. Nun wird in einem
ersten Schritt der Eintrag der Tabelle FILE gelesen. Sofern ein physikalisches Dokument existiert, wird dieses entfernt (Anhand der Version kann das Storage etabliert werden).
Nachdem in einem zweiten Schritt die Datei über das Storage physikalisch entfernt worden ist, wird dann in einem dritten Schritt der aktuelle File-Zustand auf der Datenbank nachgeführt.
Fehlerhandling/Plausibilisierung:
Generell gelten die Regeln (PK, AK, FK, Unique, NotNull) der Datenbank. Die zusätzlichen Fehler sind:
  • Aufgrund von Validator-Prüfungen (VD)
  • Wenn das Document über die DocumentId nicht gefunden wird (1)
  • Wenn die korrekte Version nicht gefunden wird (2)
  • Wenn das File über die FileId nicht gefunden wird (3/4)
  • Wenn für die korrekte Version die Modify-Rechte fehlen (5)
  • Wenn die Version zur FileId von der Checkout-Version des Dokuments abweicht (6)
  • Wenn der FileAccess nicht registriert ist (7)
  • Der StorageDirectorAndProtector im FileAccess nicht registriert ist (8)
  • Wenn das Löschen der bestehenden Datei aufgrund des geschlossenen StorageDirectors blockiert wurde (9)
  • Wenn das Löschen der bestehenden Datei aufgrund des „ReadOnly“ StorageDirectors blockiert wurde (10)
  • Wenn die bestehende Datei nicht gelöscht werden kann weil sie physikalisch nicht existiert (11)
  • Wenn das Dokument nicht ausgecheckt ist (12)
  • Wenn das Dokument nicht vom ContextUser ausgecheckt wurde (13)
Bemerkungen:
(1): GetDocNEx
(2): GetVrsNEx
(3): GetFileNEx
(4): ModFileNEx
(5): ModFileInsuffPriv
(6): ModDocResetFileVrsMsm
(7): EnvFileAccNReg
(8): EnvStrgDirAndProtNReg
(9): EnvStrgDirAndProtDestrBlkClosedStrg
(10): EnvStrgDirAndProtDestrBlkReadOnlyStrg
(11): EnvStrgDirAndProtDestrBlkFileNEx
(12): ModDocNCheckedOut
(13): ModDocCheckoutUsrMsm
Das hier betroffene Datei-Gefäss zeigt anschliessend an diese Service-Ausführung wieder auf die referenzierte Datei.
Das Attribut „ExcludeFromIndex“ wird dabei ebenfalls automatisch wieder gemäss der referenzierten Datei gesetzt.