INDEX
Vous pouvez utiliser la fonction INDEX lorsque vous devez sélectionner ou tester des objets spécifiques en fonction de leur occurrence ou ajouter un numéro de séquence à des objets en sortie.
La fonction INDEX renvoie un entier qui représente l'index d'un objet par rapport à l'objet qu'il contient le plus proche, en tenant uniquement compte des objets valides.
INDEX ne peut pas être utilisé dans une règle de composant.
- Syntaxe :
- INDEX (nom-objet-unique)
- Signification :
- INDEX (objet_pour_lequel_obtenir_index)
- Renvoie :
- Un entier unique
La variable object_for_which_to_get_index doit être un nom de type. Le résultat est l'index de object_for_which_to_get_index.
- Si objet_pour_lequel_obtenir_index est une entrée, il s'agit de l'index se trouvant dans tous les objets valides.
- Si objet_pour_lequel_obtenir_index est une sortie, il s'agit de l'index se trouvant dans tous les objets (valides et non valides).
- Renvoie 0 si l'argument en entrée est "none".
La différence entre INDEXABS et INDEX est qu'INDEXABS compte les instances valides et non valides alors qu'INDEX compte uniquement les instances valides.
Exemples
- Message (s) = IF (INDEX (Message:Entrée) > 3, Message:Entrée, "none")
Par exemple, Entrée contient cinq Messages. Les trois première évaluations de cette règle renvoient "none". La quatrième évaluation renvoie Message[4]. La cinquième évaluation renvoie Message[5].
- Facture (s) = Mappe (Facture Segment:Entrée, INDEX ($))
Pour la première évaluation de MyMap, INDEX ($) est 1. Pour la deuxième évaluation de MyMap, INDEX ($) est 2.
Fonctions associées
- CHOOSE
- COUNT
- COUNTABS
- INDEXABS