ANS-1525 · CHAMPS PERSONNALISéS, ENREGISTREMENTS ET FORMULAIRES
NetSuite : Comment l’option « Afficher uniquement la dernière sous-entité » affecte les valeurs du serveur
Les paramètres NetSuite qui simplifient les noms d'affichage des sous-entités et des sous-éléments peuvent modifier de manière inattendue les valeurs renvoyées par les scripts côté serveur.
Solution courte
Les préférences NetSuite « Afficher uniquement la dernière sous-entité » et « Afficher uniquement le dernier sous-élément » (Accueil > Définir les préférences) simplifient l’affichage des noms en ne présentant que l’élément enfant. Ce paramètre a également une incidence sur les fonctions côté serveur telles que nlapiGetFieldText(), qui ne renverra que le nom de l’élément enfant. Les développeurs doivent tenir compte de ce comportement dans leurs scripts, car les noms des éléments parents seront omis.
Scénario
Les utilisateurs de NetSuite peuvent activer des préférences permettant d’afficher uniquement la dernière sous-entité ou le dernier sous-élément dans les listes, ce qui simplifie l’interface utilisateur. Toutefois, ce paramètre d’affichage peut entraîner un comportement inattendu lorsque des scripts côté serveur tentent de récupérer la valeur complète de ces champs. Les scripts s'attendant à un format « parent : enfant » peuvent alors ne recevoir que la partie « enfant », ce qui provoque des erreurs logiques.
Solution
NetSuite propose des préférences utilisateur, accessibles via Accueil > Définir les préférences, intitulées « Afficher uniquement la dernière sous-entité » et « Afficher uniquement le dernier sous-élément ». Lorsque l’une de ces préférences est activée, le système modifie la manière dont les noms d’entité et d’élément sont affichés. Au lieu du nom hiérarchique complet, tel que « [parent] : [enfant] », seule la partie « [enfant] » sera visible dans l’interface utilisateur. Ce paramètre d’affichage a un impact significatif sur l’exécution des scripts côté serveur. Plus précisément, lorsqu’un script côté serveur utilise la fonction nlapiGetFieldText() pour récupérer la valeur textuelle d’un champ concerné par ces préférences, il ne renverra que le nom « [enfant] ». Les développeurs doivent tenir compte de ce comportement dans leurs scripts NetSuite. Il est essentiel de ne pas partir du principe que les valeurs textuelles des champs incluront toujours le nom de l’entité ou de l’article parent lorsque ces préférences sont actives. Le code doit être suffisamment robuste pour gérer les cas où seul le nom de l’enfant est renvoyé.
Support expert NetSuite
Besoin d’aide pour cet enjeu NetSuite ?
Accompagnement-conseil et configuration pour Champs personnalisés, enregistrements et formulaires
