4D v14.3Find in array |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
Find in array
|
Find in array ( ArrayName ; Wert {; Startspalte} ) -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
ArrayName | Array |
![]() |
Array, in dem gesucht werden soll | |||||
Wert | Ausdruck |
![]() |
Wert, der gesucht werden soll | |||||
Startspalte | Lange Ganzzahl |
![]() |
Element, bei dem die Suche beginnt | |||||
Funktionsergebnis | Lange Ganzzahl |
![]() |
Nummer des ersten gefundenen Elements im Array | |||||
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 ArrayName 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.
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 oder String Array )
C_POINTER($1)
Repeat
$vlElem:=Find in array($1->;"")
If($vlElem>0)
DELETE FROM ARRAY($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)
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 oder String Array ; -> Text oder String Variable oder Feld )
$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
Produkt: 4D
Thema: Arrays
Nummer:
230
Erstellt: < 4D v6
DELETE FROM ARRAY
INSERT IN ARRAY
Size of array
4D Programmiersprache ( 4D v11 SQL Release 6)
4D Programmiersprache ( 4D v12.4)
4D Programmiersprache ( 4D v14 R2)
4D Programmiersprache ( 4D v14 R3)
4D Programmiersprache ( 4D v13.5)
4D Programmiersprache ( 4D v14.3)
Gesplittet : Find in array ( 4D v14 R4)