Lade...
 

UpdateObox

UpdateObox

UpdateObox(windowID, oboxID), UpdateObox(, oboxID), UpdateObox

Parameter: Bezeichner eines Windows und einer Objektbox

 

Diese Operation aktualisiert Objekte in der Objektbox. Falls das Objekt noch nicht im Widget enthalten ist, dann wird es wie in FillObox eingefügt. Falls das Objekt breites im Widget enthalten ist, dann wird die Darstellung des Widgets aktualisiert, indem die Zugriffspfade erneut ausgewertet werden. Dementsprechend gelten für UpdateObox die gleichen Hinweise für die Performance, wie bei FillObox. Falls über UpdateObox hauptsächlich neue Elemente eingefügt werden, dann sollten die Elemente möglichst in einer Collection/Vektor gesammelt und mit einem einzigen UpdateObox-Aufruf an die Liste übergeben werden.

Um die Elemente im ObjectTree zu aktualisieren, gibt es den Befehl OboxSet, der das selektierte Element aktualisiert.

 

Aufrufformen

Stack
Stack   Beschreibung
Stack(In)   eine Collection
Stack(Out)   -

Für jedes Element der Collection auf dem Stack wird die korrespondierende Zeile in der Objektbox aktualisiert. Wenn für ein Objekt noch gar kein Eintrag existiert, arbeitet UpdateObox wie FillObox. Falls die Liste vorher sortiert war, dann wird die Liste nach dem Aufruf von UpdateObox neu sortiert, da sich durch die Aktualisierung der Objekte deren Reihenfolge geändert haben könnte. Zudem müssen die neu hinzugefügten Objekte an die korrekte Stelle in der Liste eingefügt werden.

Stack
Stack Position Beschreibung
Stack(In) Top Indexpfad
  Top-1 eine Collection
Stack(Out) Top -

Wenn die Elemente der Collection in die Objektbox neu eingefügt werden, kann die Reihenfolge wie bei FillObox mit einem Indexpfad gesteuert werden.

Stack
Stack   Beschreibung
Stack(In)   ein Objekt
Stack(Out)   -

Wenn für das auf dem Stack liegende Objekt eine Zeile in der Objektbox existiert, wird diese jetzt - den aktuellen Daten entsprechend - aktualisiert. Gibt es für das Objekt noch keinen Eintrag, so arbeitet UpdateObox wie FillObox. Falls die Liste sortiert war und die Sortierung durch das Update nicht mehr korrekt ist, dann wird die Liste nicht automatisch neu sortiert. Hier muss die Liste explizit per Sort nachsortiert werden. Dieses Verhalten ist so definiert, damit ein UpdateObox innerhalb einer iterate-Schleife nicht dazu führt, dass die gesamte Liste nach jedem UpdateObox neu sortiert wird.

Stack
Stack Position Beschreibung
Stack(In) Top ]
  Top-1 Objekt On
  Top-2 Objekt On-1
  . . . . . .
  Top-n O1
  Top-n-1 [
Stack(Out)   -

Für jedes Objekt vom Stack mit einem korrespondierendem Eintrag in der Objektbox werden die angezeigten Daten aktualisiert, andernfalls wird es wie bei FillObox eingefügt. Falls die Liste vorher sortiert war, dann wird die Liste nach dem Aufruf von UpdateObox neu sortiert, da sich durch die Aktualisierung der Objekte deren Reihenfolge geändert haben könnte. Zudem müssen die neu hinzugefügten Objekte an die korrekte Stelle in der Liste eingefügt werden.

Hinweis: Nur gültige Objekte werden aufgenommen, es sei denn, die Gültigkeitsprüfung ist ausgeschaltet oder das Flag LIST_INVALID ist gesetzt.