Les fonctions ToNumber et
CDbl sont équivalentes.
Description
ToNumber convertit une valeur numérique, monétaire, booléenne ou de type chaîne de texte en nombre.
Arguments
"numérique" est une valeur numérique ou monétaire.
"chaîne" est une chaîne de texte contenant un texte numérique.
"booléen" est une valeur booléenne que vous devez traiter en tant que valeur numérique.
Résultat
Nombre fractionnaire
Action
ToNumber convertit une valeur numérique, monétaire, booléenne ou de type chaîne de texte en nombre.
Dans une base de données, certaines valeurs sont enregistrées sous forme de nombres dans des champs numériques, d'autres sous forme de texte dans des champs de caractères. La décision quant à la nature et au type des champs est prise lors de la définition de la base de données. Les nombres que vous souhaitez utiliser pour des opérations arithmétiques (coût d'un article, quantité commandée, etc.) sont généralement enregistrés dans des champs numériques ; ceux que vous utilisez pour d'autres opérations (tels que les numéros de client, les numéros de téléphone, etc.) sont généralement enregistrés dans des objets texte.
ToNumber permet de convertir un nombre enregistré sous forme de texte en nombre sur lequel vous pouvez effectuer des opérations arithmétiques.
L'argument "booléen" permet de traiter les valeurs de données SQL_BIT en tant que valeurs numériques.
Exemple d'utilisation
Utilisez cette fonction, par exemple, si les références de vos produits contiennent des informations codées que vous souhaitez employer dans des calculs. En général, cette fonction est utilisée pour convertir une valeur monétaire ou de type chaîne contenant tous les caractères numériques en valeur numérique.
Exemples
ToNumber({orders.ORDER AMOUNT})Renvoie une valeur de type numérique que le champ monétaire {Commandes.MONTANT COMMANDE} contient.
ToNumber("123.45")Renvoie 123,45.
ToNumber({file.REFERENCE})Renvoie 200.00 où "200" est la chaîne de texte dans le champ {fichier.REFERENCE}.
ToNumber({file.ACCTNO}/2)Renvoie 22144 lorsque {fichier.NUMEROCOMPTE} = 44288.
ToNumber({customer.POSTAL CODE}) < 33333Renvoie la valeur TRUE (vrai) où {Clients.CODE POSTAL} est "21385".
Commentaires
Lorsque vous utilisez la fonction ToNumber, il est recommandé de vérifier au préalable la valeur concernée à l'aide de la fonction NumericText. NumericText renvoie une valeur TRUE (vrai) uniquement si la valeur de la chaîne peut être correctement convertie en nombre. Dans le cas contraire, si vous tentez de convertir en nombre une valeur qui n'est pas un nombre, la formule crée une erreur dans votre rapport.
L'exemple suivant illustre une utilisation conjointe courante des fonctions NumericText et ToNumber en syntaxe Crystal :
If NumericText ({file.FIELD}) Then
ToNumber ({file.FIELD})
Else
0