[Inhalt] [Zurück] [Weiter] [Thema] [Index]

ScanRel()


Syntax:

ScanRel(Relation R) : Array
R: Relation, aus der Werte importiert werden sollen

Beispiel:

arr := ScanRel(rel)

Beschreibung:

Bereitet das Importieren von Wertepaaren aus R in Zeitreihen vor.

Die Relation R hat folgenden Aufbau

1. Feld: String: Stationsname
2. Feld: Datum
3. Feld: String/Zeit: Zeit
4. Feld: Real/String: Wert
5. Feld: String: Textwert
.

Die Namen der Felder sind frei.

Alle Stationsnamen, die in R enthalten sind, werden in einem Array zusammen mit dem kleinsten und größten Zeitpunkt zurückgeliefert. Der Index eines Array-Eintrags ist dabei der Stationsname, der Inhalt enthält, mit Leerzeichen getrennt, die beiden Zeitpunkte als String im Format #Y#m#d#H#M#S.

Auf R sollte ein Index über die ersten drei Felder erstellt worden sein. Ist dies nicht der Fall, erstellt ScanRel diesen Index. Keinesfalls darf ein anderer Index erstellt worden sein. Aus Performancegründen ist es sinnvoll, Memory-Relation zu benutzen.

Beispiel der Benutzung:

      # dBase-Relation oeffnen
      db := Relation ("werte")

      # in Memory-Relation wandeln
      R := DBFilter (db, Tupel(db))

      # Scannen
      arr := ScanRel (R)

      # Schleife ueber alle Eintraege
      FORALL _key IN arr
         station := _key
         von := @Token(arr[_key], 1)
         bis := @Token(arr[_key], 2)
         bereich := [von, bis]

         print (station,": ",bereich)
      ENDFOR
Siehe auch ImportRel().



toposoft 16.04.2024