ANS-1195 · DéVELOPPEMENT SUITESCRIPT

Pourquoi le champ de texte libre de NetSuite formate-t-il les nombres de manière inattendue ?

Les champs personnalisés NetSuite dont le type est passé de « Numérique » à « Texte libre » peuvent conserver leur ancienne mise en forme, ce qui nécessite de convertir explicitement les valeurs de script en chaînes de caractères.

Solution courte

Les champs personnalisés NetSuite qui étaient initialement de type numérique (décimal, entier, pourcentage) peuvent conserver leur comportement de mise en forme même après avoir été reconfigurés en « texte libre ». Pour éviter cela, veillez à ce que toute valeur écrite dans un tel champ via SuiteScript soit explicitement convertie en chaîne de caractères à l’aide de `myVariable.toString()` avant de définir la valeur du champ.

Scénario

Les utilisateurs peuvent rencontrer un problème dans NetSuite : un champ personnalisé de type « Texte libre » applique de manière inattendue une mise en forme aux saisies numériques. Ce comportement se produit généralement lorsqu’un champ personnalisé a été initialement créé avec un type numérique (tel que « Décimal », « Entier » ou « Pourcentage ») puis modifié pour devenir un champ de type « Texte libre ». Le système semble conserver le formatage numérique d’origine du champ, même après la mise à jour de son type.

Solution

Pour éviter que le formatage numérique ne soit appliqué à un champ de texte libre, assurez-vous que la valeur écrite dans le champ via SuiteScript est explicitement une chaîne de caractères. Si la valeur est un nombre, elle doit être convertie en chaîne de caractères à l’aide de la méthode .toString() avant d’être définie.

Par exemple :

javascript
var myNumber = 6;
// where custrecord_ my_ number is a custom field that was changed from being Integer format to Free-Form Text.
currentRecord.setValue({
    fieldId: 'custrecord_ my_ number',
    value: myNumber.toString()
});

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

Accompagnement-conseil et configuration pour Développement SuiteScript

Parler à un consultant