SmartExpressions : Différence entre versions

De YoWiki
Sauter à la navigation Sauter à la recherche
Ligne 166 : Ligne 166 :
 
# Fonction : <code>substring</code>
 
# Fonction : <code>substring</code>
 
# Nombre de paramètres : <code>3</code>
 
# Nombre de paramètres : <code>3</code>
# Paramètres attendus : Une Chaîne de caractères ([[DataStore|string]]), le nombre à partir duquel la fonction doit tronquer, le nombre de caractères à prendre en compte
+
# Paramètres attendus : Une Chaîne de caractères ([[DataStore|string]]), le nombre à partir duquel la fonction doit tronquer, le nombre de caractères à prendre en compte après la troncation
 +
''À noter : le troisième paramètre est facultatif. S'il n'est pas présent, la fonction renverra tous les caractères situés après la troncation''
  
<p>''La première chaîne de caractères est la chaîne dans laquelle rechercher, la deuxième chaîne de caractère est la chaîne à rechercher''</p>
+
<p>Par exemple :</p>
 +
<p>Pour une dynvar paramétrée de la manière suivante : <code>substring(DENOMINATION, 2, 3)</code>;</p>
 +
<p>Si la variable DENOMINATION vaut "Hercule";</p>
 +
<p>La Dynvar ainsi paramétrée vaudra "rcu"</p>
 +
</br>
 +
<p>Ou encore :</p>
 +
<p>Pour une dynvar paramétrée de la manière suivante : <code>substring(DENOMINATION, 0, 4)</code>;</p>
 +
<p>Si la variable DENOMINATION vaut "Hercule";</p>
 +
<p>La Dynvar ainsi paramétrée vaudra "Herc"</p>
 +
</br>
 +
<p>Ou enfin :</p>
 +
<p>Pour une dynvar paramétrée de la manière suivante : <code>substring(DENOMINATION, 2)</code>;</p>
 +
<p>Si la variable DENOMINATION vaut "Hercule";</p>
 +
<p>La Dynvar ainsi paramétrée vaudra "rcule"</p>

Version du 25 août 2020 à 08:52

Cette page est en cours de construction

Introduction

On désigne par "SmartExpressions" la syntaxe permettant de paramétrer les Dynvars.

Paramétrage

Pour mémoire : la syntaxe est basée sur PHP : https://www.php.net/manual/fr/funcref.php

Bases de la syntaxe

En cours de construction

Les fonctions

Principes

Une fonction prend toujours la forme suivante : MA_FONCTION( xxx )


Une fonction est donc toujours composée de trois éléments :

MA_FONCTION : on commence toujours par nommer la fonction souhaitée.

( ) : ces parenthèses dites "d'exécution" peuvent contenir plusieurs paramètres, séparés chacun par une virgule. Chaque fonction pourra avoir plus ou moins de paramètres.

xxx : les paramètres de la fonction. Ce sont les paramètres qui vont permettre à la fonction de s'exécuter.

Applications

Fonctions sur les Dates

addition de deux dates
  1. Fonction : date_sum
  2. Nombre de paramètres : 3
  3. Paramètres attendus : Date de début, Un nombre, Une chaîne de caractères parmi : year; month; day; hour; minute; second

Par exemple :

Ajouter 3 années à une date de signature

date_sum(DATE_SIGNATURE,3,year)

La Dynvar ainsi paramétrée renverra la date d'arrivée en ajoutant 3 années à la date de signature

calcul de la différence entre deux dates
  1. Fonction : date_diff
  2. Nombre de paramètres : 3
  3. Paramètres attendus : Date de début, Date de fin, Une chaîne de caractères parmi : year; month; day; hour; minute; second

Par exemple :

Trouver le nombre d'années de différences entre une date de signature et la date (fixe) du 09/09/2004

date_diff(DATE_SIGNATURE,09/09/2004

Trouver le nombre d'années de différences entre une date de signature et la date (fixe) du 09/09/2004

renvoyer automatiquement la date du jour

Spécificité : fonction unaire, ne possède pas de paramètres

  1. Fonction : now()
  2. Nombre de paramètres : 0
  3. Paramètres attendus : N/A

Par exemple :

Now().png

trouver automatiquement l'âge d'un individu
  1. Fonction : years_old
  2. Nombre de paramètres : 1
  3. Paramètres attendus : Une date

Par exemple :

years_old(DATE_NAISSANCE)

isoler le jour, le mois, l'année d'une date
  1. Fonction : date_day date_month date_year
  2. Nombre de paramètres : 1
  3. Paramètres attendus : Une date

Par exemple : date_month(DATE_SIGNATURE)

changer le format d'une date
  1. Fonction : date_format
  2. Nombre de paramètres : 2
  3. Paramètres attendus : Une date, Un format de date

Par exemple :

Passer d'une date complète à un format jour/mois

date_format(DATE_NAISSANCE, "d/m")

Fonctions sur les Nombres

Introduction : notez bien que les traitements sur les nombres peuvent être effectués aussi bien sur des variables que sur d'autres dynvars

arrondir un nombre en choisissant le nombre de chiffres souhaités après la virgule
  1. Fonction : round
  2. Nombre de paramètres : 2
  3. Paramètres attendus : Un nombre, Un autre nombre

La fonction enregistre le premier nombre, puis l'arrondit en fonction du deuxième paramètre

Par exemple :

Pour arrondir un prix d'achat à 3 chiffres après la virgule

round(PRIX_ACHAT, 3)

arrondir un nombre entier à l'entier inférieur
  1. Fonction : floor
  2. Nombre de paramètres : 1
  3. Paramètres attendus : Un nombre

La fonction attend un nombre et lui retire ses décimales en arrondissant à l'entier inférieur

Par exemple :

Pour arrondir un prix d'achat à l'entier inférieur

floor(PRIX_ACHAT)

arrondir un nombre entier à l'entier supérieur
  1. Fonction : ceil
  2. Nombre de paramètres : 1
  3. Paramètres attendus : Un nombre

La fonction attend un nombre et lui retire ses décimales en arrondissant à l'entier supérieur

Par exemple :

Pour arrondir un prix d'achat à l'entier supérieur

ceil(PRIX_ACHAT)

Fonctions sur les Chaînes de caractères

Comparer deux chaînes de caractères
  1. Fonction : contains
  2. Nombre de paramètres : 2
  3. Paramètres attendus : Une Chaîne de caractères (string), une autre Chaîne de caractères

La première chaîne de caractères est la chaîne dans laquelle rechercher, la deuxième chaîne de caractère est la chaîne à rechercher

La Dynvar paramétrée avec cette fonction vaudra TRUE si la chaîne du second paramètre est incluse dans la chaîne du 1er paramètre

Par exemple :

contains(PRENOM,NOM)

Trouver si une chaîne de caractères commence par une autre chaîne de caractères
  1. Fonction : begins_with
  2. Nombre de paramètres : 2
  3. Paramètres attendus : Une Chaîne de caractères (string), une autre Chaîne de caractères

La première chaîne de caractères est la chaîne dans laquelle rechercher, la deuxième chaîne de caractère est la chaîne à rechercher

La Dynvar paramétrée avec cette fonction vaudra TRUE si la chaîne du premier paramètre commence par la chaîne du second paramètre

Trouver si une chaîne de caractères se finit par une autre chaîne de caractères
  1. Fonction : ends_with
  2. Nombre de paramètres : 2
  3. Paramètres attendus : Une Chaîne de caractères (string), une autre Chaîne de caractères

La première chaîne de caractères est la chaîne dans laquelle rechercher, la deuxième chaîne de caractère est la chaîne à rechercher

La Dynvar paramétrée avec cette fonction vaudra TRUE si la chaîne du premier paramètre se finit par la chaîne du second paramètre

Tronquer une chaîne de caractères
  1. Fonction : substring
  2. Nombre de paramètres : 3
  3. Paramètres attendus : Une Chaîne de caractères (string), le nombre à partir duquel la fonction doit tronquer, le nombre de caractères à prendre en compte après la troncation

À noter : le troisième paramètre est facultatif. S'il n'est pas présent, la fonction renverra tous les caractères situés après la troncation

Par exemple :

Pour une dynvar paramétrée de la manière suivante : substring(DENOMINATION, 2, 3);

Si la variable DENOMINATION vaut "Hercule";

La Dynvar ainsi paramétrée vaudra "rcu"


Ou encore :

Pour une dynvar paramétrée de la manière suivante : substring(DENOMINATION, 0, 4);

Si la variable DENOMINATION vaut "Hercule";

La Dynvar ainsi paramétrée vaudra "Herc"


Ou enfin :

Pour une dynvar paramétrée de la manière suivante : substring(DENOMINATION, 2);

Si la variable DENOMINATION vaut "Hercule";

La Dynvar ainsi paramétrée vaudra "rcule"