{"id":4349,"date":"2017-08-21T14:36:54","date_gmt":"2017-08-21T14:36:54","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/how-to-add-custom-buttons-to-subtabs-or-sublists-in-netsuite-2\/"},"modified":"2026-07-28T18:26:40","modified_gmt":"2026-07-28T18:26:40","slug":"comment-ajouter-des-boutons-personnalises-aux-sous-onglets-ou-aux-sous-listes-dans-netsuite","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-ajouter-des-boutons-personnalises-aux-sous-onglets-ou-aux-sous-listes-dans-netsuite\/","title":{"rendered":"Comment ajouter des boutons personnalis\u00e9s aux sous-onglets ou aux sous-listes dans NetSuite"},"content":{"rendered":"","protected":false},"template":"","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","ga_subtitle":"Familiarisez-vous avec l'approche standard de NetSuite pour l'int\u00e9gration de boutons personnalis\u00e9s, principalement dans les sous-listes, ainsi qu'avec les m\u00e9thodes SuiteScript modernes.","ga_short_answer":"Dans NetSuite, les boutons sont g\u00e9n\u00e9ralement ajout\u00e9s \u00e0 des sous-listes plut\u00f4t que directement \u00e0 des sous-onglets. Alors que les anciennes m\u00e9thodes pouvaient faire appel \u00e0 des champs INLINEHTML pour les liens personnalis\u00e9s, l\u2019approche recommand\u00e9e et prise en charge pour ajouter des boutons \u00e0 des sous-listes dans la version moderne de NetSuite SuiteScript 2.x consiste \u00e0 utiliser la m\u00e9thode sublist.addButton(), ce qui garantit une meilleure compatibilit\u00e9 et une plus grande facilit\u00e9 de maintenance.","ga_scenario":"Les utilisateurs cherchent souvent \u00e0 am\u00e9liorer les formulaires NetSuite en ajoutant des boutons personnalis\u00e9s \u00e0 des sections sp\u00e9cifiques. Une demande courante consiste \u00e0 placer un bouton sur un sous-onglet afin de <a class=\"ga-interlink\" href=\"https:\/\/answers.gurussolutions.com\/fr\/answers\/how-do-scripted-buttons-function-in-netsuite-forms\/\">d\u00e9clencher une action personnalis\u00e9e<\/a>, telle que l\u2019ouverture d\u2019une nouvelle fen\u00eatre ou l\u2019ex\u00e9cution d\u2019un script. La difficult\u00e9 r\u00e9side dans l\u2019identification de la m\u00e9thode correcte et prise en charge pour le placement des boutons au sein de la structure de l\u2019interface utilisateur de NetSuite.","ga_solution":"Dans NetSuite, les boutons sont principalement con\u00e7us pour \u00eatre ajout\u00e9s \u00e0 des sous-listes plut\u00f4t que directement \u00e0 des sous-onglets. Bien qu\u2019il ait \u00e9t\u00e9 possible par le pass\u00e9 d\u2019utiliser un champ INLINEHTML pour int\u00e9grer un simple lien faisant office de bouton, cette m\u00e9thode est d\u00e9sormais marqu\u00e9e comme obsol\u00e8te sur la plupart des pages de formulaire (\u00e0 l\u2019exception des formulaires Suitelet) et n\u2019est g\u00e9n\u00e9ralement pas l\u2019approche recommand\u00e9e pour ajouter des \u00e9l\u00e9ments interactifs.Pour le d\u00e9veloppement NetSuite moderne utilisant SuiteScript 2.x, la m\u00e9thode standard et prise en charge pour ajouter des boutons \u00e0 des sous-listes consiste \u00e0 utiliser la fonction sublist.addButton(). Cela offre un moyen robuste et facile \u00e0 maintenir d\u2019int\u00e9grer des actions personnalis\u00e9es directement dans les interfaces des sous-listes.Exemple d\u2019ajout d\u2019un bouton \u00e0 une sous-liste \u00e0 l\u2019aide de SuiteScript 2.x :\n\n```\njavascript\/** * @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    };});\n```\n\nCet extrait de script montre comment ajouter un bouton \u00e0 une sous-liste. Le param\u00e8tre functionName fait r\u00e9f\u00e9rence \u00e0 une fonction de script c\u00f4t\u00e9 client qui d\u00e9finit l\u2019action du bouton.","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T10:36:54-04:00","ga_date_verified":"2026-07-05","ga_source_subject":"How to add button in subtab","ga_ans_id":"ANS-0690","ga_publish_decision":"publish_with_edits","ga_staleness_risk":"high","ga_review_priority":"spot_check","ga_tier2_verdict":"partially_outdated","ga_tier2_concerns":"The 'INLINEHTML' field type is marked for deprecation on 'Form pages, except Suitelet Forms'.; While using an inline HTML field with a link is still technically possible, modern SuiteScript (2.x) provides direct methods like `sublist.addButton()` for adding buttons to sublists, which is a more standard and supported approach than the inline HTML workaround for many scenarios.","ga_final_category":"SuiteScript Development","footnotes":""},"ga_category":[108,23,108],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-4349","qa_entry","type-qa_entry","status-publish","hentry","ga_category-developpement-suitescript","ga_category-suitescript-development","ga_audience-developer-suitescript","ga_difficulty-niveau-intermediaire"],"taxonomy_info":{"ga_category":[{"value":108,"label":"D\u00e9veloppement SuiteScript"},{"value":23,"label":"SuiteScript Development"},{"value":108,"label":"D\u00e9veloppement SuiteScript"}],"ga_audience":[{"value":10,"label":"Developer\/SuiteScript"}],"ga_difficulty":[{"value":92,"label":"Niveau interm\u00e9diaire"}]},"featured_image_src_large":[],"author_info":[],"comment_info":"","_links":{"self":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry"}],"about":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/types\/qa_entry"}],"version-history":[{"count":1,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4349\/revisions"}],"predecessor-version":[{"id":6270,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4349\/revisions\/6270"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=4349"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=4349"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=4349"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=4349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}