Version 3
Find in array (Array; Wert{; Start}) Numerisch
Parameter | Typ | Beschreibung | |
Array | Array | Array, in dem gesucht werden soll | |
Wert | Ausdruck | Wert, der gesucht werden soll | |
Start | Numerisch | Element, bei dem die Suche beginnt | |
Funktionsergebnis | Numerisch | Nummer des ersten gefundenen | |
Elements im Array |
Beschreibung
Die Funktion Find in array gibt die Nummer des ersten gefundenen Elements zurück. Typ des gesuchten Wertes und Typ der Tabelle müssen übereinstimmen.
Find in array funktioniert mit Arrays vom Typ Text, Alphanumerisch, Numerisch, Datum, Zeiger und Boolean. Die Parameter Array und Wert müssen vom selben Typ sein.
Wurde kein Element gefunden, gibt Find in array den Wert - 1 zurück.
Start erwartet die Nummer des Elements, ab dem gesucht werden soll. Der Parameter ist optional. Wird er nicht angegeben, wird ab dem ersten Element gesucht.
Beispiele
1. Folgende Projektmethode löscht alle leeren Elemente aus einem Array vom Typ Alphanumerisch oder Text, dessen Zeiger als Parameter übergeben wurde:
` Projektmethode CLEAN UP ARRAY ` CLEAN UP ARRAY ( Pointer ) ` CLEAN UP ARRAY ( -> Text or String array ) C_POINTER ($1) Repeat $vlElem:=Find in array ($1->;"") If ($vlElem>0) DELETE ELEMENT ($1->;$vlElem) End if Until ($vlElem<0)
Anschließend können Sie schreiben:
ARRAY TEXT (atSomeValues;...) ` ... ` Führe dies und das mit dem Array aus ` ... ` Lösche leere alphanumerische Elemente CLEAN UP ARRAY (->atSomeValues)
2. Folgende Projektmethode wählt das erste Element eines Array aus, dessen Zeiger als erster Parameter übergeben wurde. Dies ist der Wert der Variablen bzw. des Datenfelds, dessen Zeiger als Parameter übergeben wurde:
` Projektmethode SELECT ELEMENT ` SELECT ELEMENT ( Pointer ; Pointer) ` SELECT ELEMENT ( -> Text or String array ; -> Text or String variable or field ) $1->:=Find in array ($1->;$2->) If ($1->=-1) $1->:=0 ` Wurde kein Element gefunden, setze Array auf kein ausgewähltes Element End if
Anschließend können Sie schreiben:
` Objektmethode PopUp-Menü asGender Case of : (Form Event=On Load) SELECT ELEMENT (->asGender;->[People]Gender) End case
Referenz
DELETE FROM ARRAY, INSERT IN ARRAY, Size of array.
Arrays and Selections, Popup Lists