ANS-0690 · DéVELOPPEMENT SUITESCRIPT
Comment ajouter des boutons personnalisés aux sous-onglets ou aux sous-listes dans NetSuite
Familiarisez-vous avec l'approche standard de NetSuite pour l'intégration de boutons personnalisés, principalement dans les sous-listes, ainsi qu'avec les méthodes SuiteScript modernes.
Solution courte
Dans NetSuite, les boutons sont généralement ajoutés à des sous-listes plutôt que directement à des sous-onglets. Alors que les anciennes méthodes pouvaient faire appel à des champs INLINEHTML pour les liens personnalisés, l’approche recommandée et prise en charge pour ajouter des boutons à des sous-listes dans la version moderne de NetSuite SuiteScript 2.x consiste à utiliser la méthode sublist.addButton(), ce qui garantit une meilleure compatibilité et une plus grande facilité de maintenance.
Scénario
Les utilisateurs cherchent souvent à améliorer les formulaires NetSuite en ajoutant des boutons personnalisés à des sections spécifiques. Une demande courante consiste à placer un bouton sur un sous-onglet afin de déclencher une action personnalisée, telle que l’ouverture d’une nouvelle fenêtre ou l’exécution d’un script. La difficulté réside dans l’identification de la méthode correcte et prise en charge pour le placement des boutons au sein de la structure de l’interface utilisateur de NetSuite.
Solution
Dans NetSuite, les boutons sont principalement conçus pour être ajoutés à des sous-listes plutôt que directement à des sous-onglets. Bien qu’il ait été possible par le passé d’utiliser un champ INLINEHTML pour intégrer un simple lien faisant office de bouton, cette méthode est désormais marquée comme obsolète sur la plupart des pages de formulaire (à l’exception des formulaires Suitelet) et n’est généralement pas l’approche recommandée pour ajouter des éléments interactifs.Pour le développement NetSuite moderne utilisant SuiteScript 2.x, la méthode standard et prise en charge pour ajouter des boutons à des sous-listes consiste à utiliser la fonction sublist.addButton(). Cela offre un moyen robuste et facile à maintenir d’intégrer des actions personnalisées directement dans les interfaces des sous-listes.Exemple d’ajout d’un bouton à une sous-liste à l’aide de SuiteScript 2.x :
javascript/** * @NApiVersion 2.x * @NScriptType UserEventScript */define(['N/ui/serverWidget'], function(serverWidget) { function beforeLoad(context) { if (context.type === context.UserEventType.VIEW || context.type === context.UserEventType.EDIT) { var form = context.form; var sublist = form.getSublist({ id: 'recmachcustrecord_your_sublist_id' }); // Replace with your sublist ID if (sublist) { sublist.addButton({ id: 'custpage_mycustombutton', label: 'My Custom Action', functionName: 'myClientScriptFunction' }); } } } return { beforeLoad: beforeLoad };});Cet extrait de script montre comment ajouter un bouton à une sous-liste. Le paramètre functionName fait référence à une fonction de script côté client qui définit l’action du bouton.
Support expert NetSuite
Besoin d’aide pour cet enjeu NetSuite ?
Accompagnement-conseil et configuration pour Développement SuiteScript
