set_history()

Fügt einem Objekt über std.SetHistory einen benutzerdefinierten Historieneintrag hinzu. Der Server erstellt einen Eintrag vom Typ OBJECT_INFORMATION (Aktions-ID 31) in der Historientabelle des Objekts. Dies funktioniert für alle Objekttypen (Ordner, Register, Dokumente).

1. Signatur

  • Sync

  • Async

ecm.dms.set_history(
    model: _ECMModelBase | int,
    info: str,
    object_type_id: int | None = None,
) -> None
await ecm.dms.set_history(
    model: _ECMModelBase | int,
    info: str,
    object_type_id: int | None = None,
) -> None

2. Parameter

Parameter Typ Standard Beschreibung

model

_ECMModelBase | int

Entweder eine ECM-Modell-Instanz (deren id wird verwendet) oder eine numerische Objekt-ID.

info

str

Der Informationstext, der im Historieneintrag gespeichert wird.

object_type_id

int | None

None

Die numerische Objekttyp-ID. Wenn None, wird der Typ automatisch über get_object_type_by_id() ermittelt. Durch Angabe wird ein zusätzlicher Server-Roundtrip vermieden.

3. Rückgabewert

None.

4. Ausnahmen

Ausnahme Bedingung

ValueError

model ist eine Modell-Instanz mit id gleich None.

ECMNotFoundException

object_type_id ist None und kein Objekt mit der angegebenen ID existiert auf dem Server.

5. Beispiele

5.1. Historieneintrag zu einem Dokument hinzufügen

  • Sync

  • Async

doc = ecm.dms.get(InvoiceDocument, 12345)
ecm.dms.set_history(doc, "Processed by automated workflow")
doc = await ecm.dms.get(InvoiceDocument, 12345)
await ecm.dms.set_history(doc, "Processed by automated workflow")

5.2. Historieneintrag per plain ID hinzufügen

  • Sync

  • Async

ecm.dms.set_history(12345, "Export completed", object_type_id=327685)
await ecm.dms.set_history(12345, "Export completed", object_type_id=327685)

5.3. Historieneinträge zu allen Abfrageergebnissen hinzufügen

  • Sync

  • Async

for folder in ecm.dms.select(InvoiceFolder).where(InvoiceFolder.Year == 2024).stream():
    ecm.dms.set_history(folder, "Marked for annual review")
async for folder in ecm.dms.select(InvoiceFolder).where(InvoiceFolder.Year == 2024).stream():
    await ecm.dms.set_history(folder, "Marked for annual review")

6. Siehe auch

  • history() — Änderungshistorie eines Objekts lesen