4D v14.3Chercher dans tableau |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
Chercher dans tableau
|
Chercher dans tableau ( tableau ; valeur {; départ} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
tableau | Tableau |
![]() |
Tableau dans lequel effectuer la recherche | |||||
valeur | Expression |
![]() |
Valeur de même type à rechercher dans le tableau | |||||
départ | Entier long |
![]() |
Elément à partir duquel commencer la recherche | |||||
Résultat | Entier long |
![]() |
Numéro du premier élément trouvé correspondant à valeur | |||||
Chercher dans tableau retourne le numéro du premier élément de tableau qui correspond à valeur.
Chercher dans tableau peut être utilisé avec des tableaux de type Texte, Alpha, Numérique, Date, Pointeur et Booléen. Les paramètres tableau et valeur doivent être du même type.
Si aucun élément n'est trouvé, Chercher dans tableau renvoie -1.
Si départ est spécifié, Chercher dans tableau commence la recherche à l'élément spécifié par départ. Si départ n'est pas spécifié, Chercher dans tableau commence la recherche à l'élément 1.
La méthode projet suivante efface tous les éléments vides du tableau alpha ou texte passé en paramètre :
` Méthode projet NETTOYER TABLEAU
` NETTOYER TABLEAU ( Pointeur )
` NETTOYER TABLEAU ( -> Tableau Texte ou Alpha )
C_POINTEUR($1)
Repeter
$vlElem:=Chercher dans tableau($1->;"")
Si($vlElem>0)
SUPPRIMER DANS TABLEAU($1->;$vlElem)
Fin de si
Jusque($vlElem<0)
Une fois que cette méthode projet est implémentée dans votre base, vous pouvez écrire, par exemple :
TABLEAU TEXTE(TabValeurs;...)
` ...
` Utiliser le tableau comme vous voulez
` ...
` Eliminer les éléments chaînes vides
NETTOYER TABLEAU(->TabValeurs)
La méthode projet suivante sélectionne le premier élément d'un tableau dont le pointeur passé comme premier paramètre correspond à la valeur de la variable ou du champ dont le pointeur est passé en second paramètre :
` Méthode projet SELECTIONNER ELEMENT
` SELECTIONNER ELEMENT ( Pointeur ; Pointeur)
` SELECTIONNER ELEMENT ( -> Tableau Texte ou Alpha ; -> Champ ou variable de type Texte ou Alpha )
$1->:=Chercher dans tableau($1->;$2->)
Si($1->=-1)
$1->:=0 ` Si aucun élément n'est trouvé, fixer le tableau à aucun élément sélectionné
Fin de si
Une fois que cette méthode projet est implémentée dans la base, vous pouvez écrire, par exemple :
` Méthode objet du pop-up menu TabTitres
Au cas ou
:(Evenement formulaire=Sur chargement)
SELECTIONNER ELEMENT(->TabTitres;->[Personnes]Titre)
Fin de cas
Note : Cet exemple utilise l'élément sélectionné du tableau. Gardez à l'esprit que l'élément sélectionné ne sera pas significatif si le tableau comporte plus de 32767 éléments (cf. section Tableaux et objets de formulaire). Il est dans ce cas nécessaire d'utiliser une variable entier long pour stocker le résultat de Chercher dans tableau.
Produit : 4D
Thème : Tableaux
Numéro :
230
Nom intl. : Find in array
Créé : < 4D v6
INSERER DANS TABLEAU
SUPPRIMER DANS TABLEAU
Taille tableau
4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v12.4)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
Parent de : Chercher dans tableau ( 4D v14 R4)