Outils pour utilisateurs

Outils du site


doc:v3:acquisition:apprentissage:fonctionsspecifiques

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
doc:v3:acquisition:apprentissage:fonctionsspecifiques [2018/03/26 11:16]
romain [Comment utiliser l'interface et l'assistant ?]
doc:v3:acquisition:apprentissage:fonctionsspecifiques [2023/03/17 09:56] (Version actuelle)
Ligne 1: Ligne 1:
 ====== Fonctions spécifiques ====== ====== Fonctions spécifiques ======
  
-===== Comment utiliser l'​interface et l'​assistant ? ===== 
- 
-Pour utiliser un élément ou une fonction : 
-  - dans la zone de texte en haut, posistionnez le curseur à l'​endroit ou vous voulez l'​inclure 
-  - Double cliquer sur la fonction souhaitée dans la liste à droite, la fonction est automatiquement écrite en haut dans la zone de texte 
- 
-Deux cas possibles : 
- 
-  * Soit vous avez une fonction comme split, qui affiche un point "​."​ devant donc : .split("​-"​) 
-  * Soit vous avez une fonction sans point devant, donc avec () 
- 
-Dans le premier cas, le champs à impacter doit être placé devant le point qui précède la fonction donc : 
-<​code>​ 
-@FLD19.split('​-'​) 
-</​code>​ 
-Dans le second cas, le champs à impacter sera entre parenthèses : 
- 
-Dans ce second cas, la position du champs dépend ensuite de la fonction, pour plus d'​informations,​ voir le sommaire de cette page et cherchez la fonction concernée. 
- 
- 
-===== Fonctions disponibles ===== 
- 
-====  Concaténation d'​éléments ​ ==== 
-<​code>​@concat</​code>​ 
-Permet de concaténer les valeurs de chacun des paramètres qui lui sont fournis. 
- 
-Il est également possible de spécifier un séparateur. 
- 
-{{wiki:​icons:​info.png}} Elle vous permet de réaliser des opérations de concaténation directement dans votre champ de recherche variable sans passer par un second champ de type spécifique. 
- 
-=== Options de capture === 
- 
-Deux syntaxes sont possibles. 
- 
-Sans spécifier de séparateur:​ 
-<​code>​@concat(valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-En spécifiant un séparateur:​ 
- 
-<​code>​@concat('​@sep:​separateur',​valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-Où //​separateur//​ peut être le caractère (ou chaîne de caractères) de votre choix à l'​exception du caractère quote simple. 
- 
-Chaque valeur peut être : 
-  * Une chaîne de caractères encadrée par des quotes simples. 
-  * Un numérique. 
-  * [[#​@self|@self]] : une référence au champ lui-même. 
-  * [[#​@<​groupname>​|@<​groupname>​]] : une référence à une capture dans le filtre de champ. (effectuée dans le filtre de champ). 
- 
-====  Date d'​échéance ​ ==== 
-<​code>​@dateecheance(@fldX,​jours)</​code>​ 
-une macro qui fait une chose bien pratique de façon simple. ​ 
-== Options de capture== 
- 
- 
-@fldX 
-La référence au champ date. 
- 
-jours 
-Le nombre de jours que l'on souhaite ajouter à la date 
-====  Concaténation de Date ==== 
-**@concatdate** permet de concaténer les valeurs de chacun des paramètres qui lui sont fournis et en plus leur applique la macro @Smartdate. 
-<​code>​@concatdate(valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-ou 
-<​code>​@concat('​@sep:​separateur',​valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-Pour plus de détails se référer à la macro [[#​Concaténation d'​éléments|@concat]] 
- 
-====  Concaténation d'​éléments et conversion en Date ==== 
- 
- 
-**@concatdate** permet de concaténer les valeurs de chacun des paramètres qui lui sont fournis et en plus leur applique la macro **@Smartdate**. 
-<​code>​@concatdate(valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-ou 
-<​code>​@concat('​@sep:​separateur',​valeur1,​valeur2,​...,​valeurN)</​code>​ 
- 
-Pour plus de détails se référer à la macro [[#​Concaténation d'​éléments|@concat]] 
-==== Condition OU entre plusieurs champs ==== 
- 
-**@or** renvoi 1 (sous forme de chaîne de caractère) si les champs champ1 OU champ2 ont été retrouvés sur le document. 
-Dans le cas contraire la chaîne vide sera renvoyée. 
- 
-<​code>​@or(champ1,​champ2)</​code>​ 
- 
-Où champ1 et champ2 sont des références de champs (@FLDX) 
- 
-====Condition évaluée ​ ==== 
-<​code>​@condition(<​expression>​)</​code>​ 
- 
-Où //​expression//​ doit être une expression python valide. ​ 
-Elle peut contenir des références à des champs d'​analyse COLD (**@FLD**//​xxx//​). 
-**@condition** évalue l'​expression python fournie en paramètre. Elle retourne 1 si l'​expression est évaluée à vraie, et 0 si l'​expression 
-est évaluée à faux. 
- 
-{{wiki:​icons:​info.png}} Avant évaluation les références **@FLD**//​xxx//​ sont remplacées par leurs valeurs et sont encadrées 
-par des simples quotes (sauf pour les valeurs 0, 1, True, False). 
-Attention donc car un nombre devient une chaîne de caractère ! Il peut être alors nécessaire d'​utiliser des fonctions 
-de conversion ([[https://​docs.python.org/​2/​library/​stdtypes.html#​numeric-types-int-float-long-complex|long(),​ int(), float()]]) 
-  
-====Conversion du jour numérique en texte  ==== 
- 
-**@int2day** est une macro qui traduit un jour exprimé sous forme numérique dans sa représentation littérale. 
- 
-<​code>​@int2day(nombre)</​code>​ 
- 
-Où nombre peut prendre les valeurs suivantes: 
-* Une chaîne de caractères encadrée par des quotes simples. 
-  * Un numérique. 
-  * [[#​@self|@self]] : une référence au champ lui-même. 
-  * [[#​@<​groupname>​|@<​groupname>​]] : une référence à une capture dans le filtre de champ. 
- 
- 
- 
-  @int2day(3) => mercredi 
-  @int2day("​7"​) => dimanche 
-  ​ 
-  ​ 
-En utilisant @self, si celui-ci vaut 5: 
-  @int2day(@self) => vendredi 
-  ​ 
-  ​ 
-En utilisant une [[cold:​reference:​groupname|variable de capture]] //<​jour>//​ qui vaut 1 
-  @int2day(@<​jour>​) => lundi 
-==== Conversion du mois texte   ​en ​ mois numérique== 
-<​code>​@monthint(mois)</​code>​ 
- 
-Où le paramètre //mois// est une chaîne de caractères qui représente l'​écriture d'un mois sous sa forme littérale. 
- 
-**@monthint** retourne le numéro (sur deux chiffres) du mois correspondant. 
- 
-Ci dessous le tableau des correspondances entre un numéro et une représentation littérale du mois. 
- 
-^ Numéro de mois en sortie ^ Valeurs possibles en entrée ^ 
-| 01 | ja, jan, janv, janu, janvi, janua, janvie, janvier, januar, january | 
-| 02 | f, fe, fev, feb, fevr, febr, fevri, febru, fevrie, februa, fevrier, februar, february | 
-| 03 | mar, mars, marc, march, marz | 
-| 04 | av, ap, avr, apr, avri, apri, avril, april | 
-| 05 | mai, may | 
-| 06 | juin, jun, june, juni | 
-| 07 | jul, july, juil, juill, juille, juillet | 
-| 08 | au, ao, aug, aou, aout, augu, augus, august | 
-| 09 | s, se, sept, septe, septem, septemb, septembe, septembr, septembre, september | 
-| 10 | o, oc, oct, octo, octob, octobe, octobr, october, octobre, okt, oktober | 
-| 11 | n, no, nov, nove, novem, novemb, novembr, novembe, novembre, november | 
-| 12 | d, de, dec, dece, decem, decemb, decembr, decembe, decembre, december, dez, dezember | 
- 
- 
-====  Conversion du mois numérique en texte   ==== 
- 
-**@int2month** est une macro qui traduit un mois exprimé sous forme numérique dans sa représentation littérale. 
- 
-====  Valeurs alternatives ==== 
- 
- 
- 
-** 
-@alternative** renvoi la première valeur non vide parmi une liste de valeurs possibles. 
-<​code>​ 
-@alternative(@FLD4,​@FLD3,'​Non renseignée'​) 
-</​code>​ 
- La macro **@alternative** prend au minimum 2 paramètres. 
- 
-Chaque paramètre alternatif peut être : 
- 
-      * Une chaîne de caractère (encadrée ou non par des simples quotes ou des doubles quotes) 
-     ​* ​ Une référence à un champ (**@FLD**//​xxx//​). 
- 
-=== Exemple === 
- 
-^ ID ^ Description du champ ^ Valeur retrouvée ^ 
-|3| Adresse de facturation | 2 Rue Pégoud, 90130 PETIT-CROIX | 
-|4| Recherche Adresse de livraison| 1 Rue du Général de Gaulle, 90130 Montreux-Château | 
- 
-Nous avons deux champs. L'un nous retrouve l'​adresse de facturation. Le second l'​adresse de livraison. 
-Nous voudrions, si l'​adresse de livraison n'est pas spécifiée,​ choisir l'​adresse de facturation. 
- 
-Créons un champ supplémentaire de type spécifique et utilisons la macro @alternative 
-  @alternative(@FLD4,​@FLD3) 
-  ​ 
-Le premier choix se porte sur le champ 4 (Recherche Adresse de livraison). S'il n'est pas trouvé on prendra la valeur 
-du champ 3 (Adresse de facturation). 
- 
-Et si aucun n'est trouvé et que l'on souhaite indexer une valeur par défaut : 
-  @alternative(@FLD4,​@FLD3,'​Non renseignée'​) 
doc/v3/acquisition/apprentissage/fonctionsspecifiques.1522062975.txt.gz · Dernière modification: 2023/03/17 09:56 (modification externe)