ANS-0288 · IMPRESSION, PDF ET MODèLES D’E-MAILS

Comment convertir des valeurs numériques en mots anglais dans les transactions NetSuite ?

Ce guide fournit des formules NetSuite permettant d'afficher les montants des transactions sous forme de mots en anglais, y compris des solutions pour la gestion des centimes décimaux.

Solution courte

Pour convertir une valeur numérique en mots anglais dans NetSuite, utilisez la formule TO_CHAR(TO_DATE({votre_champ}, 'j'), 'jsp'). Pour traiter les centimes, une formule plus complexe utilisant les instructions INITCAP, TRUNC et CASE peut être mise en œuvre afin de représenter avec précision le montant total en lettres.

Scénario

Les utilisateurs de NetSuite ont souvent besoin d’afficher des montants de transactions numériques, tels que les totaux de factures, sous forme de mots en anglais sur des documents imprimés. La fonctionnalité standard de NetSuite ne propose pas en soi de méthode directe pour effectuer cette conversion, en particulier lorsqu’il s’agit de valeurs décimales représentant des centimes. Cette exigence est courante dans les documents juridiques ou officiels où les montants doivent être écrits en toutes lettres.

Solution

Les utilisateurs de NetSuite peuvent convertir des valeurs numériques en mots anglais à l’aide de formules de type SQL dans des recherches enregistrées ou des champs personnalisés.

Pour convertir une valeur numérique en son équivalent en mots anglais (par exemple, 123 en « One Hundred Twenty-Three ») :

TO_CHAR(TO_DATE({your_field}, 'j'), 'jsp')

Cette formule est simple, mais ne prend pas en charge les valeurs décimales (centimes). Par exemple, 123,45 serait converti en « One Hundred Twenty-Three » sans tenir compte des 45 centimes.

Pour représenter avec précision les montants incluant des centimes (par exemple, 123,45 en « One Hundred Twenty-Three AND Forty-Five CENTS »), vous pouvez utiliser la formule suivante. Cet exemple utilise le champ standard TOTAL

d’une facture :

INITCAP(TO_CHAR (TO_DATE (TRUNC ({TOTAL}), 'J'), 'JSP')  || CASE WHEN (({TOTAL} - trunc({TOTAL}))*100 > 0) THEN (' AND ' ||  TO_CHAR(TO_DATE (({TOTAL} - trunc({TOTAL}))*100, 'J'), 'JSP') || ' CENTS') ELSE ' ONLY' END)

Cette formule avancée convertit d’abord la partie entière du montant total, puis vérifie s’il y a des centimes. S’il y en a, elle convertit la partie en centimes en mots et ajoute « CENTIMES » ; dans le cas contraire, elle ajoute « SEULEMENT ».

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

Accompagnement-conseil et configuration pour Impression, PDF et modèles d’e-mails

Parler à un consultant