Programmieren mit dBASE PLUS: Funktionen: insert

Aus Wikibooks


Fügt ein Element mit dem Wert false in ein eindimensionales Array oder eine Zeile bzw. Spalte von Elementen mit dem Wert false in ein zweidimensionales Array ein. Bei Erfolg wird der Wert 1 zurückgegeben, andernfalls ein Fehler generiert. Die Größe des Arrays wird nicht geändert. Daher gehen die Elemente am Ende des Arrays bei der Operation verloren.

Syntax[Bearbeiten]

<oReferenz>.insert(<Position AusdruckN> [, <Zeile/Spalte AusdruckN>])

<oReferenz>

Ein Bezug auf das ein- oder zweidimensionale Array, in das die Daten eingefügt werden.

<Position AusdruckN>

Bei einem eindimensionalen Array gibt <Position AusdruckN> die Nummer des Elements an, in das der Wert false eingefügt wird.

Bei einem zweidimensionalen Array gibt <Position AusdruckN> eine Zeile oder Spalte an. Das zweite Argument (siehe nächster Absatz) legt fest, ob eine Zeile oder Spalte eingefügt wird.

<Zeile/Spalte AusdruckN>

Dieses Argument kann den Wert 1 oder 2 annehmen. Wenn Sie es nicht definieren oder 1 angeben, wird eine Zeile zu einem zweidimensionalen Array hinzugefügt. Bei Angabe des Wertes 2 wird eine Spalte eingefügt. Die Angabe dieses Parameters für ein eindimensionales Array führt zu einem Fehler.

Eigenschaft von[Bearbeiten]

Array

Beschreibung[Bearbeiten]

Mit insert( ) können Elemente in ein Array eingefügt werden. Dabei werden folgende Aktionen durchgeführt:

  • Zuerst wird ein Element in ein eindimensionales Array oder eine Zeile bzw. Spalte in ein zweidimensionales Array-Objekt eingefügt.
  • Danach werden die verbleibenden Elemente in Richtung Array-Ende verschoben (beim Einfügen einer Zeile nach unten, beim Löschen eines Elements oder einer Spalte nach rechts).
  • Zum Schluß wird in die neuen Array-Positionen der Wert false eingefügt.

Die Größe des Arrays wird dabei nicht geändert, und daher gehen die Elemente am Array-Ende (das letzte Element eines eindimensionalen Arrays oder die letzte Zeile bzw. Spalte eines zweidimensionalen Arrays) verloren. Sollen die Daten erhalten bleiben, müssen Sie das Array vor dem Einfügen mit grow( ) vergrößern.

Eindimensionale Arrays

Rufen Sie insert( ) für ein eindimensionales Array auf, wird der logische Wert false an der Position des angegebenen Elements eingefügt. Die restlichen Elemente werden um eine Position in Richtung Array-Ende verschoben. Das letzte Element geht dabei verloren.

Angenommen, Sie definieren mit folgender Anweisung ein eindimensionales Array:

aAlpha = {"A", "B", "C"}

Das Array hat eine Zeile und kann wie folgt dargestellt werden:

A B C

Durch den Aufruf von aAlpha.insert(2) wird der Wert false in das Element Nummer 2 eingefügt und der Wert ”B” von aAlpha[2] nach aAlpha[3] verschoben. Durch diesen Vorgang geht das in aAlpha[3] gespeicherte "C" verloren. Das Array enthält jetzt folgende Wert:

A false B

Zweidimensionale Arrays

Rufen Sie insert( ) für ein zweidimensionales Array auf, wird der logische Wert false in jedes Element der angegebenen Zeile oder Spalte eingefügt. Die Elemente in den restlichen Spalten oder Zeilen werden um eine Position in Richtung Array-Ende verschoben. Die Elemente in der letzten Zeile oder Spalte gehen dabei verloren.

Angenommen, Sie definieren ein zweidimensionales Array und speichern Buchstaben in den Elementen. Die folgende Abbildung zeigt, wie das Array durch die Anweisung aAlpha.insert(2,2) geändert wird.

(Bild einfügen)