die VI

Alle Instanzen von Objekten verfügen über eine Eigenschaft mit dem Namen "vi". Dabei handelt es sich um einen Volatile-Identifier, ein Zeiger auf eine Typinformation.

Hierbei handelt es sich um eine Optimierung, um die serialisierten Objekte möglichst klein zu halten, sonst müsste der Typname ausgegeben werden (30...80 Zeichen pro Datensatz)

In der Steuerdatenbank der cardo Instanz wird dazu eine Tabelle pib_persistent_typ_vids angelegt und mit allen bekannten Typen bei Bedarf befüllt.

Das nachträgliche Umbenennen von Klassen sollte generell vermieden werden!

Es gibt dabei drei Arten, für die jeweils eine eigene VId generiert wird:

  • PIBT = Pib-Typen (alle Implementierungen von IduIT.PiB.ObjectModel.IPiBObjectBase)

  • WFWI = Workflow-Workitem (alle Ableitungen von IduIT.PiB.ProcessModel.WorkitemBaseBase)

  • WFPC = Workflow-Process (alle Ableitungen von IduIT.PiB.ProcessModel.ProcessBaseBase)

Für den Zugriff auf die Typinformation stehen server- und clientseitige folgende Klassen zur Verfügung:

Server

Alle Prozess:

PiB.ProcessModel.ImplementingTypes.AllProcessTypes

Alle Arbeitsaufgaben:

PiB.ProcessModel.ImplementingTypes.AllWorkitemTypes

Alle anderen PiB-Objekttypen:

PiB.ObjectModel.ImplementingTypes

Bedenke, dass "Alle" hier alle Typen aller installierten PiB-Anwendungen meint.

Client

Alle Prozess und Arbeitsaufgaben:

PiB.ProcessModel.TypeInfo

Alle anderen PiB-Objekttypen:

PiB.ObjectModel.TypeInfo


Zuletzt geändert: 21.03.2024 09:46:22 (erstmals erstellt 17.11.2020)