digest()
Gibt den Digest eines Dokumentobjekts über std.GetDocumentDigest zurück.
Standardmäßig (calculate=False) wird der in der Datenbank gespeicherte Digest
zurückgegeben. Bei calculate=True berechnet der Server einen frischen Digest
aus den tatsächlichen Dokumentdateien und gibt sowohl den gespeicherten als auch
den berechneten Digest zurück, was eine Integritätsprüfung ermöglicht.
1. Signatur
-
Sync
-
Async
ecm.dms.digest(
model: ECMDocumentModel | int,
object_type_id: int | None = None,
*,
calculate: bool = False,
) -> ECMDocumentDigest
await ecm.dms.digest(
model: ECMDocumentModel | int,
object_type_id: int | None = None,
*,
calculate: bool = False,
) -> ECMDocumentDigest
2. Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
|
|
— |
Entweder eine |
|
|
|
Die numerische Objekttyp-ID. Wenn |
|
|
|
Bei |
4. Ausnahmen
| Ausnahme | Bedingung |
|---|---|
|
|
|
|
5. Beispiele
5.1. Gespeicherten Digest lesen
-
Sync
-
Async
doc = ecm.dms.select(RechnungsDokument).where(RechnungsDokument.Titel == "Rechnung").execute()[0]
result = ecm.dms.digest(doc)
print(result.table_digest)
doc = (await ecm.dms.select(RechnungsDokument).where(RechnungsDokument.Titel == "Rechnung").execute())[0]
result = await ecm.dms.digest(doc)
print(result.table_digest)
5.2. Integrität prüfen: gespeicherten mit berechnetem Digest vergleichen
-
Sync
-
Async
result = ecm.dms.digest(doc, calculate=True)
if result.table_digest == result.local_digest:
print("Integrität OK")
else:
print(f"Abweichung! gespeichert={result.table_digest} berechnet={result.local_digest}")
result = await ecm.dms.digest(doc, calculate=True)
if result.table_digest == result.local_digest:
print("Integrität OK")
else:
print(f"Abweichung! gespeichert={result.table_digest} berechnet={result.local_digest}")
6. Siehe auch
-
files() — Dateien eines Dokuments herunterladen
-
get_object_type_by_id() — Typ-ID eines Objekts ermitteln