Ecrire une condition

Les conditions sont utilisées pour appliquer des fonctions spéciales, de manière ciblée. D'une manière générale,

  • Si une variable n'existe pas, la (sous-)condition renvoie FAUX.
  • Si une erreur survient, la (sous-)condition renvoie FAUX.
  • Si votre condition est mal écrite, elle renvoie FAUX.
Pour vous aider à écrire une condition, vous pouvez utiliser le module “debug” dans un workflow.

Opérateurs

  • “==”: Est strictement égal à
  • “!=”: Est strictement différent que
  • “>”: Est plus grand que
  • “<”: Est plus petit que
  • “~~”: Contient
  • “!~”: Ne contient pas
  • “~-”: Commence par
  • “-~”: Termine par
  • “**”: [LISTE] Contient
  • “!*”: [LISTE] Ne contient pas

Coordinateurs

  • “&&” valeur logique “ET”
  • “||” valeur logique “OU”

“A && B” signifie alors “A ET B” alors que “A || B” signifie “A OU B OU ENCORE LES DEUX”

Vous pouvez combiner jusqu'à 10 niveau de coordination, en multipliant le nombre de “&&” et de “||” et en créant une condition imbriquée. Voir les exemples.

Vous ne pouvez pas utiliser deux opérateurs différents sur un même pied d'imbrication, car le système ne comprend pas quel opérateur doit alors être traité en priorité. Vous devez alors utiliser des conditions imbriquées. Autrement dit, vous ne pouvez pas avoir à la fois && et ||. Vous devez utiliser &&& ou ||| pour montrer lequel des deux opérateurs a un niveau de condition plus élevé.

Champs

Voici les champs usuellement disponibles. Attention, il faut réfléchir à la façon dont vous rédigez vos conditions, car tous les champs ne sont pas disponibles d'office. Par exemple, rédiger une condition sur le nom de l'utilisateur sans l'avoir collecté au préalable ne pourra que renvoyer FALSE.

Workflows

  • workflow_id: l'id du workflow en cours d'exécution

Client

  • name: Le nom de famille, par exemple “Doe”
  • firstname: Le prénom, par exemple “Stéphane”
  • email: L'email, par exemple [email protected]
  • tel_prefix: Le préfixe téléphonique si défini, par exemple “+32”
  • tel: Le reste du numéro de téléphone, par exemple “4 123 456”
  • shipping_method: La méthode de livraison: home, relay, store, email, account
  • is_company: Egal à 1 si c'est une entreprise, à 0 sinon
  • company_name: Le nom de l'entreprise s'il échet
  • company_vat: Le numéro BCE de l'entreprise s'il échet
  • address_factu_street: L'adresse de facturation (rue)
  • address_factu_number: L'adresse de facturation (numéro)
  • address_factu_bte: L'adresse de facturation (boite)
  • address_factu_zip: L'adresse de facturation (code postal)
  • address_factu_city: L'adresse de facturation (ville)
  • address_street: L'adresse de livraison (rue)
  • address_number: L'adresse de livraison (numéro)
  • address_bte: L'adresse de livraison (boite)
  • address_zip: L'adresse de livraison (code postal)
  • address_city: L'adresse de livraison (ville)
  • custom_list: Le choix dans la liste personnalisée

Panier

  • cart_total: Le montant total du panier sans mention de la virgule ni espaces. Par exemple 12,45€ devient 1245, alors que 50€ devient 5000.
  • cart_items_count: Le nombre réel de produits dans le panier. Si plusieurs exemplaires du même produits sont présents, ils seront comptés plusieurs fois.
  • cart_items_count_unique: Le nombre de produits différents dans le panier. Si plusieurs exemplaires du même produits sont présents, ils seront comptés une seule fois.
  • cart_items [LISTE]: Les éléments contenus dans le panier. Il faut utiliser l'opérateur "**" (liste contient) ou "!*" (liste ne contient pas) pour vérifier la présence d'un élément spécifique.
  • cart_items_states [LISTE]: Une liste des états de chaque produit. Il faut utiliser l'opérateur "**" (liste contient) ou "!*" (liste ne contient pas) pour vérifier la présence d'un élément spécifique.
cart_total n'est calculé que dans le cas où un élément de type “Résumé de la commande” ou “Panier” a été ajouté auparavant. Sinon, il n'existe pas et la condition renverra FAUX

Exemples

Exemple d'une condition simple : “SI LE TOTAL DU PANIER EST SUPERIEUR A 50,00 EUROS”

cart_total > 5000

Exemple d'une condition combinée : “SI LE TOTAL DU PANIER EST SUPERIEUR A 50,00 EUROS ET S'IL Y A AU MOINS 3 ARTICLES DANS LE PANIER”

cart_total > 5000 && cart_items_count > 2

Conditions dans les déclencheurs de Workflows

Les boutons s'afficheront, même si la condition n'est pas remplie. C'est au moment de l'exécution que la condition est vérifiée. Nous travaillons à l'amélioration de ce processus.