Documentation

Cookies

Nous utilisons les cookies afin de vous garantir la meilleure expérience sur notre site. Vous pouvez modifier vos préférences à tout moment en cliquant sur "Cookies" en pied de page.

Fonctions de tableaux

Les fonctions de tableaux vous permettent de manipuler des listes de données : calculer des sommes, filtrer des éléments, transformer des valeurs, et plus encore.

Agrégation

Ces fonctions réduisent un tableau à une seule valeur.

SOMME(tableau)

Calcule la somme de tous les éléments d'un tableau numérique.

JavaScript
SOMME([10, 20, 30])                          // 60
SOMME([1.5, 2.5, 3])                         // 7
SOMME({{commande.produits.prixHT}})          // Somme des prix HT

Bon à savoir : SOMME([])sur un tableau vide retourne 0.

MOYENNE(tableau)

Calcule la moyenne arithmétique des éléments d'un tableau.

JavaScript
MOYENNE([10, 20, 30])                        // 20
MOYENNE([100, 80, 90, 70])                   // 85
MOYENNE({{produits.notes}})                  // Note moyenne

MAX(tableau) ou MAX(a, b, c...)

Retourne la valeur maximale. Fonctionne avec un tableau ou plusieurs arguments.

JavaScript
MAX([5, 2, 8, 1])                            // 8
MAX(10, 20, 5)                               // 20
MAX({{produits.stock}})                      // Stock le plus élevé

Bon à savoir : MAX([])sur un tableau vide retourne 0.

COMPTER(valeur)

Retourne le nombre d'éléments dans un tableau ou de caractères dans une chaîne.

JavaScript
COMPTER([1, 2, 3, 4, 5])                     // 5
COMPTER("Bonjour")                           // 7
COMPTER({{commande.produits}})               // Nombre de produits

Filtrage et recherche

Ces fonctions permettent de sélectionner des éléments selon des critères.

FILTRER(tableau, condition)

Retourne un nouveau tableau contenant uniquement les éléments qui satisfont la condition. Utilisez {{$}} pour référencer l'élément courant.

JavaScript
// Filtrer les nombres supérieurs à 10
FILTRER([5, 15, 8, 20, 3], {{$}} > 10)       // [15, 20]

// Filtrer les produits en stock
FILTRER({{produits}}, {{$.stock}} > 0)

// Filtrer les commandes validées
FILTRER({{commandes}}, {{$.statut}} == "validée")

// Condition multiple
FILTRER({{produits}}, {{$.prix}} > 50 ET {{$.stock}} > 0)

Astuce : {{$}} représente l'élément courant pendant l'itération. Pour accéder à ses champs, utilisez {{$.nomChamp}}.

TROUVER(tableau, condition)

Retourne le premier élément qui satisfait la condition, ou false si aucun n'est trouvé.

JavaScript
// Trouver le premier nombre pair
TROUVER([1, 3, 4, 7, 8], {{$}} % 2 == 0)     // 4

// Trouver le premier produit en rupture
TROUVER({{produits}}, {{$.stock}} == 0)

// Trouver une commande spécifique
TROUVER({{commandes}}, {{$.numero}} == "CMD-001")

Attention : Cette fonction retourne false si aucun élément n'est trouvé, pas un tableau vide. Pensez à gérer ce cas avec une condition.

UNIQUE(tableau)

Élimine les doublons et retourne un tableau avec des valeurs uniques.

JavaScript
UNIQUE([1, 1, 2, 3, 3, 3, 4])                // [1, 2, 3, 4]
UNIQUE(["a", "b", "a", "c"])                 // ["a", "b", "c"]
UNIQUE({{commande.produits.tva}})            // Taux de TVA uniques

Transformation

Ces fonctions créent de nouveaux tableaux en transformant chaque élément.

TRANSFORMER(tableau, expression)

Applique une transformation à chaque élément et retourne un nouveau tableau. Utilisez {{$}} pour référencer l'élément courant.

JavaScript
// Doubler chaque nombre
TRANSFORMER([1, 2, 3], {{$}} * 2)            // [2, 4, 6]

// Extraire un champ de chaque objet
TRANSFORMER({{produits}}, {{$.nom}})         // ["Produit A", "Produit B", ...]

// Calculer le TTC de chaque produit
TRANSFORMER({{produits}}, {{$.prixHT}} * 1.20)

// Formater chaque valeur
TRANSFORMER([10, 20, 30], CONCAT({{$}}, " €"))  // ["10 €", "20 €", "30 €"]

TRIER(tableau)

Trie un tableau numérique en ordre croissant.

JavaScript
TRIER([5, 2, 8, 1, 9])                       // [1, 2, 5, 8, 9]
TRIER({{produits.prix}})                     // Prix triés du plus bas au plus haut

Manipulation

Ces fonctions permettent de combiner, découper ou assembler des tableaux.

CONCAT(arg1, arg2, ...)

Concatène des chaînes, nombres ou tableaux. Très polyvalent !

JavaScript
// Concaténer des chaînes
CONCAT("Bonjour ", "Constance")              // "Bonjour Constance"

// Mélanger texte et nombres
CONCAT("Total : ", 150, " €")                // "Total : 150 €"

// Concaténer des tableaux
CONCAT([1, 2], [3, 4])                       // [1, 2, 3, 4]

JOINDRE(tableau, séparateur)

Joint les éléments d'un tableau en une chaîne avec un séparateur.

JavaScript
JOINDRE(["a", "b", "c"], ", ")               // "a, b, c"
JOINDRE(["Paris", "Lyon", "Marseille"], " - ")  // "Paris - Lyon - Marseille"
JOINDRE({{produit.categories}}, ", ")        // "Catégorie1, Catégorie2"

COUPER(texteOuTableau, nombre, depuis?)

Extrait une portion d'une chaîne ou d'un tableau.

JavaScript
// Extraire les 3 premiers caractères
COUPER("Bonjour", 3)                         // "Bon"

// Extraire 4 caractères depuis la position 3
COUPER("Bonjour", 4, 3)                      // "jour"

// Extraire les 2 premiers éléments
COUPER([1, 2, 3, 4, 5], 2)                   // [1, 2]

// Limiter la longueur d'un nom
COUPER({{client.nom}}, 20)

ZIP(tableau1, tableau2)

Entrelace deux tableaux en alternant leurs éléments.

JavaScript
ZIP([1, 3, 5], [2, 4, 6])                    // [1, 2, 3, 4, 5, 6]
ZIP(["a", "c"], ["b", "d"])                  // ["a", "b", "c", "d"]

Exemples combinés

En pratique, vous combinerez souvent plusieurs fonctions. Voici des exemples réalistes.

Calculer le total d'une commande

JavaScript
var lignes = {{commande.produits}};
var sousTotal = TRANSFORMER(lignes, {{$.quantite}} * {{$.prixUnitaire}});
SOMME(sousTotal)

Trouver les produits à réapprovisionner

JavaScript
var produits = {{magasin.produits}};
var enRupture = FILTRER(produits, {{$.stock}} < {{$.stockMinimum}});
var noms = TRANSFORMER(enRupture, {{$.nom}});
JOINDRE(noms, ", ")

Résultat : "Produit A, Produit C, Produit F"

Calculer la TVA par taux

JavaScript
var produits = {{commande.produits}};
var tauxUniques = UNIQUE(TRANSFORMER(produits, {{$.tva}}));

TRANSFORMER(tauxUniques,
  CONCAT(
    "TVA ", {{$}}, "% : ",
    SOMME(
      TRANSFORMER(
        FILTRER(produits, {{$.tva}} == {{$1}}),
        {{$.prixHT}} * {{$.tva}} / 100
      )
    ),
    " €"
  )
)

Résultat : ["TVA 5.5% : 12.50 €", "TVA 20% : 45.00 €"]

Prochaine étape

Découvrez maintenant les fonctions de manipulation de dates pour travailler avec des échéances, des périodes et des calendriers.