Version 6.0
BLOB to list (Blob{; Offset}) ListenRef
Parameter | Typ | Beschreibung | |
Blob | BLOB | BLOB mit einer hierarchischen Liste | |
Offset | Numerisch | Versatz im BLOB (in Bytes) | |
Neuer Versatz nach Lesen | |||
Funktionsergebnis | ListenRef | Referenz auf die neu erstellte Liste |
Beschreibung
Der Befehl BLOB to list erstellt eine neue hierarchische Liste mit den in Blob gespeicherten Daten an der mit Offset festgelegten Position (beginnend mit Null) und gibt für diese neue Liste eine Listenreferenznummer zurück.
Die BLOB Daten müssen mit dem Befehl übereinstimmen. Im Normalfall verwenden Sie BLOBs, die Sie zuvor über den Befehl LIST TO BLOB gefüllt haben.
Geben Sie den optionalen Parameter Offset nicht an, wird die Liste ab Beginn des BLOB gelesen. Bei einem BLOB mit mehreren Variablen bzw. Listen müssen Sie den Parameter Offset und zusätzlich eine numerische Variable übergeben. Setzen Sie vor dem Aufruf diese numerische Variable auf den geeigneten Versatz. Nach dem Aufruf gibt dieselbe Variable den Versatz der nächsten im BLOB gespeicherten Variablen zurück.
Wurde die hierarchische Liste erfolgreich gespeichert, wird die OK Variable auf 1 gesetzt, andernfalls auf 0; zum Beispiel, wenn der Speicher nicht ausreicht.
Hinweis zur Plattformunabhängigkeit: BLOB to list und LIST TO BLOB verwalten die in BLOBs gespeicherten Listen in einem internen 4D Format. Beim Einsetzen dieser beiden Befehle müssen Sie sich deshalb nicht um den Austausch von Bytes zwischen den Plattformen kümmern. Mit anderen Worten, Sie können ein unter Windows erstelltes BLOB auf Macintosh wiederverwenden und umgekehrt.
Beispiel
In diesem Beispiel entnimmt die Formularmethode für ein Dateneingabeformular eine Liste aus einem BLOB Feld, bevor das Formular auf dem Bildschirm erscheint und speichert es wieder in dem BLOB Feld, sobald die Dateneingabe gespeichert wird:
` [Dinge zu erledigen];"Eingabe" Formularmethode Case of : (Form event=On Load) hList:=BLOB to list([Dinge zu erledigen]Weitere Ideen) If (OK=0) hList:=New list End if : (Form event=On Unload) CLEAR LIST(hList;*) : (bValidate=1) LIST TO BLOB(hList;[Dinge zu erledigen]Weitere Ideen) End case
Referenz
Systemvariablen und Mengen
Wurde die Liste erfolgreich gespeichert, wird die OK Variable auf 1 gesetzt, andernfalls auf 0.