Lade...
 

CX_DB_UTILITY::RebuildCollection

CX_DB_UTILITY::RebuildCollection

Beschreibung:

Diese Funktion baut eine Collection neu auf:

  1. Transiente Kopie der Collection erstellen
  2. Original-Collection leeren
  3. Transiente Kopie zurück in die Collection kopieren

Wenn der zweite Parameter TRUE ist, werden alle Objekte geprüft, ob sie "in Ordnung", d.h. nicht korrupt, sind. Das bewirkt, dass jedes Objekt geladen wird, wodurch diese Funktion sehr langsam laufen kann.

Die Funktion gibt einen Ganzzahlwert zurück. 0 bedeutet, dass die Collection genau so viele Einträge hat wie vor dem Neuaufbau, ein negativer Wert bedeutet, dass die Collection weniger Einträge enthält als vorher. Ursache können korrupte Objekte sein (wenn der zweite Parameter TRUE ist), oder die Collection war vorher in Teilen defekt (z.B. ein SET, das einige doppelte Einträge enthielt).

Code-Beispiel:
FindAll(CX_PERSON) FALSE GetManager(OBJECT) Call(GetDBUtility) Call(RebuildCollection)

 

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top CX_DB_UTILITY Tool-Objekt 
  Top-1 INTEGER TRUE: Korrupte Objekte herausfiltern
  Top-2 COLLECTION Collection
Stack(Out) Top INTEGER Differenz der Anzahl der Einträge

Funktionsaufruf: Call(RebuildCollection)