C16_KeyReorgWatch
Diese Funktion liefert den aktuellen Status des Reorganisationslaufes. Die Informationen befinden sich nach dem Aufruf in einer Struktur vom Typ vC16_KeyReorgInfo. Die Struktur ist folgendermaßen definiert:
typedef struct
{
vINT InfoSize;
vXLONG RecID;
vLONG KeyCount;
vLONG RecErrorCount;
vLONG KeyErrorCount;
vLONG Result;
}
vC16_KeyReorgInfo;
- Komponente: Beschreibung
- InfoSize: Größe der Struktur in Byte
- RecID: Datensatz-ID des gerade bearbeiteten Datensatzes
- KeyCount: Anzahl der bisher generierten Schlüsseleinträge
- RecErrorCount: Anzahl der bisher entdeckten defekten Datensätze
- KeyErrorCount: Anzahl der bisher aufgetretenen Wertekollisionen
- Result: Ergebnis der Reorganistation C16RES_ASYNC_RUNNING 1 Schlüsselreorganisation wird gerade durchgeführt C16RES_ASYNC_TERM 2 Schlüsselreorganisation vollständig durchgeführt C16RES_ASYNC_BREAK 3 Schlüsselreorganisation wurde abgebrochen
Im Parameter (aInstHdl) wird der von C16_InitInstance() bereitgestellte Instanz-Handle, der an die Funktion C16_OpenArea() zum Öffnen der Datenbank verwendet wurde, übergeben. Über den Parameter (aAbort) kann die Schlüsselreorganisation abgebrochen (aAbort = true) werden. Beim Abbruch der Schlüsselreorganisation kann es zu einer Verzögerung von 1-2 Sekunden kommen. In (aInfo) muss ein Zeiger auf eine vC16_KeyReorgInfo-Struktur übergeben werden. Die Strukturkomponente InfoSize muss vor der Übergabe mit der Größe der Struktur initialisiert werden (sizeof(vC16_KeyReorgInfo)).
Der Rückgabewert vom Typ vERROR beinhaltet entweder 0 (kein Fehler) oder einen negativen Fehlerwert (siehe Fehlerwerte).
Die Funktion muss solange aufgerufen werden, bis in der Strukturkomponente Result C16RES_ASYNC_BREAK oder C16RES_ASYNC_TERM zurückgegeben wird.