Convertir une donnée texte en donnée numérique (+ combiner différentes formules entre elles)

Admettons que l’on dispose d’un champ texte contenant des données chiffrées que l’on aimerait pouvoir exploiter via des filtres ou en combinaison avec d’autres valeurs.

Ex : le champ « Physical Item Details ». »Statistics Note 2″ contient pour chaque item le nombre total de prêts dans notre précédent SIGB (Aleph) et la date du dernier prêt. Les données se présentent sous la forme suivante :

No. Loans: 000 | LastDateReturn: 00000000

Si l’on souhaite par exemple exploiter le nombre de prêts, cela va passer par 3 étapes qui constitueront au final une seule et unique formule.

Etape 1 > ne conserver que les 14 premiers caractères

Formule : LEFT("Physical Item Details"."Statistics Note 2", 14)
Résultats : "No. Loans: 000"

Etape 2 > supprimer la chaine de caractère « No. Loans:  »

Formule : REPLACE("Physical Item Details"."Statistics Note 2",'No. Loans: ','') 
Résultat : "000"

Etape 3 : convertir le résultat obtenu (donnée texte) en donnée numérique. Note : Ceci n’est pas possible via le menu d’édition des propriétés de la colonne.

Formule : CAST("Physical Item Details"."Statistics Note 2" AS NUMERIC)
Résultat : "000"

Toutes ces étapes doivent bien sur être cumulées pour arriver au résultat voulu. La formule complète prend alors la forme suivante :

CAST(REPLACE(LEFT("Physical Item Details"."Statistics Note 2", 14),'No. Loans: ','') AS NUMERIC)

La valeur numérique ainsi obtenue peut désormais être exploitée via des filtres, des tris etc. On pourra par exemple créer une nouvelle colonne de toute pièce qui additionnera les valeurs de prêts dans les 2 SIGB grâce à la formule suivante :

"Physical Item Details"."Num of Loans (Not In House)"+CAST(REPLACE(LEFT("Physical Item Details"."Statistics Note 2", 14),'No. Loans: ','') AS NUMERIC)