====== Options de formatage ======
===== Comment utiliser l'interface et l'assistant ? =====
===== Macros disponibles =====
=== Filtrer la chaîne, ne garder que les numérique ===
**@keepdigits** Ne conserve que les chiffres dans la chaîne de caractère fournie.
@keepdigits(valeur_retrouvee)
Le paramètre valeur retrouvée peut être:
* [[#@self|@self]] : une référence au champ lui-même.
* [[#@|@]] : une référence à une capture dans le filtre de champ.
* Un numérique.
@keepdigits(@self)
@keepdigits(@)
@keepdigits('abc123') => 123
==== @self ====
**@self** permet d'obtenir une référence sur le champ courant (celui sur lequel on travail) de l'analyse COLD et ainsi d'obtenir sa valeur.
@self ne s'utilise que dans le cas d'un **//Post formatage//** en tant que paramètre d'une [[cold#post_formatage|macro de formatage]].
=== Exemple ===
Prenons un champs aux attributs suivants :
^ Paramètre ^ Valeur ^
| Id | 12 |
| Type | Position variable |
| Filtre de champ | Facture N. : (?.*) |
Supposons que ce champ de recherche en position variable nous retourne la valeur suivante AVANT le post formatage :
Facture N° 681476
Le post formatage suivant
@keepdigits(@self)
qui sera interprété par EzgED par
@keepdigits('Facture N° 681476')
retournera
681476
==== @ ====
@ fait référence à un groupe de capture d'une expression rationnelle.
=== Exemple ===
Etudions l'expression rationnelle suivante :
Destinataire :\s*(?P.*)
L'expression entre parenthèses définie ce que l'on appelle un groupe.
La première parenthèse est suivie immédiatement par **?P** ce qui indique que le groupe sera connu sous le nom
**adresse** Ce nom est à votre libre choix.
Puisque nous avons un groupe, qu'il a un nom, nous pouvons y faire référence :
@caststr(@)
Si par exemple le résultat AVANT post formtage est
Destinataire : EzDEV 2 Rue Pégoud, 90130 PETIT-CROIX
Alors
@caststr(@)
renvoi
EzDEV 2 Rue Pégoud, 90130 PETIT-CROIX
==== @Smartdate ====
**@smartdate** convertie une date fournie en entrée en date sous le format **//aaaa-mm-jj HH:MM:ss//** (e.g 2015-11-20 15:52:30)
@smartdate(date)
Où le paramètre date peut prendre les valeurs suivantes:
* [[#@self|@self]] : une référence au champ lui-même.
* [[#@|@]] : une référence à une capture dans le filtre de champ.
==== @smartfloat====
**@smartfloat** permet de s'assurer de la bonne représentation d'un nombre réel. La partie entière et la partie décimale seront séparées par un point.
La macro ne garde que les représentations d'un chiffre ainsi que les caractères **+ , . -**
@smartfloat(nombre_reel)
Où le paramètre //nombre_reel// peut prendre les valeurs suivantes:
* [[#@self|@self]] : une référence au champ lui-même.
* [[#@|@]] : une référence à une capture dans le filtre de champ.
* Une chaîne de caractères représentant un nombre réel.
Si par exemple @self vaut
22,4
un simple appel à
@Smartfloat(@self)
nous renvoi
22.4
Ou encore si @self a capturé
HT : ! _ / 22 , 4
parce que le texte extrait est un peu pollué, alors l'appel
@Smartfloat(@self)
nous permet d'obtenir le résultat escompté
22.4
===== Source de données interne =====
Cet assistant 3.3+ fournit une interface plus conviviale à la macro @getinlist, présente en 3.2.
[[cold:reference:coldfldformat:getinlist|Plus d'informations sur @getinlist]]