{"id":3968,"date":"2017-08-21T14:56:59","date_gmt":"2017-08-21T14:56:59","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/how-to-trigger-a-native-save-button-with-custom-client-side-scripting-in-netsuite-2\/"},"modified":"2026-07-28T18:26:17","modified_gmt":"2026-07-28T18:26:17","slug":"comment-declencher-un-bouton-denregistrement-natif-a-laide-dun-script-personnalise-cote-client-dans-netsuite","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-declencher-un-bouton-denregistrement-natif-a-laide-dun-script-personnalise-cote-client-dans-netsuite\/","title":{"rendered":"Comment d\u00e9clencher un bouton d&rsquo;enregistrement natif \u00e0 l&rsquo;aide d&rsquo;un script personnalis\u00e9 c\u00f4t\u00e9 client 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":"Ce guide pr\u00e9sente une solution de contournement par script c\u00f4t\u00e9 client permettant d'activer par programmation la fonctionnalit\u00e9 native d'enregistrement de NetSuite \u00e0 partir d'un bouton personnalis\u00e9.","ga_short_answer":"Pour d\u00e9clencher par programmation le bouton d\u2019enregistrement natif de NetSuite \u00e0 partir d\u2019un script client personnalis\u00e9, une solution de contournement non officielle consiste \u00e0 utiliser la fonction \u00ab getNLMultiButtonByName \u00bb avec l\u2019identifiant \u00ab multibutton_submitter \u00bb. Cette m\u00e9thode simule un clic sur le bouton d\u2019enregistrement standard, ce qui permet d\u2019appliquer une logique personnalis\u00e9e avant le processus de soumission de l\u2019enregistrement ; elle repose toutefois sur des fonctions internes de NetSuite non document\u00e9es.","ga_scenario":"Les utilisateurs de NetSuite ont souvent besoin de <a class=\"ga-interlink\" href=\"https:\/\/answers.gurussolutions.com\/fr\/answers\/how-do-scripted-buttons-function-in-netsuite-forms\/\">boutons personnalis\u00e9s sur les formulaires d\u2019enregistrement<\/a> pour d\u00e9clencher des actions sp\u00e9cifiques. Lorsque ces actions personnalis\u00e9es doivent aboutir au processus standard d\u2019enregistrement, il devient n\u00e9cessaire de d\u00e9clencher directement le bouton \u00ab Enregistrer \u00bb natif. Ce sc\u00e9nario se pr\u00e9sente g\u00e9n\u00e9ralement lorsque des validations personnalis\u00e9es ou des \u00e9tapes de pr\u00e9traitement doivent \u00eatre effectu\u00e9es avant que l\u2019enregistrement ne soit officiellement valid\u00e9.","ga_solution":"Bien que la m\u00e9thode officiellement prise en charge pour la cr\u00e9ation de boutons personnalis\u00e9s et la gestion des actions dans NetSuite SuiteScript 2.x implique l\u2019utilisation du module \u00ab N\/ui\/serverWidget \u00bb et la d\u00e9finition de fonctions au sein de scripts client, il existe une solution de contournement connue permettant de d\u00e9clencher directement le bouton d\u2019enregistrement natif \u00e0 partir du code c\u00f4t\u00e9 client. Cette approche utilise une fonction interne non document\u00e9e pour simuler un clic sur le bouton \u00ab Enregistrer \u00bb standard. Pour mettre en \u0153uvre cette solution de contournement, incluez l\u2019extrait de code JavaScript c\u00f4t\u00e9 client suivant dans votre script :\n\n```\njavascriptgetNLMultiButtonByName('multibutton_submitter').onMainButtonClick(this);\n```\n\nCet extrait de code cible le bouton d\u2019enregistrement natif, identifi\u00e9 par \u00ab multibutton_submitter \u00bb, et d\u00e9clenche son \u00e9v\u00e9nement de clic principal. Il est important de noter que cette m\u00e9thode repose sur des fonctions internes non document\u00e9es de NetSuite et qu\u2019elle pourrait ne plus \u00eatre prise en charge dans les futures versions de NetSuite. Pour b\u00e9n\u00e9ficier d\u2019une fonctionnalit\u00e9 de bouton personnalis\u00e9 officiellement prise en charge, veuillez vous reporter \u00e0 la documentation SuiteScript 2.x de NetSuite concernant \u00ab N\/ui\/serverWidget \u00bb.","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T10:56:59-04:00","ga_date_verified":"2026-07-05","ga_source_subject":"Custom Save Button on Record","ga_ans_id":"ANS-0309","ga_publish_decision":"publish_with_edits","ga_staleness_risk":"high","ga_review_priority":"spot_check","ga_tier2_verdict":"partially_outdated","ga_tier2_concerns":"The function 'getNLMultiButtonByName' and the button name 'multibutton_submitter' are undocumented and not part of the officially supported NetSuite SuiteScript 2.x API.; The current recommended approach for adding custom buttons and handling client-side actions involves using the 'N\/ui\/serverWidget' module and defining functions within client scripts, rather than directly manipulating native button elements.","ga_final_category":"SuiteScript Development","footnotes":""},"ga_category":[108,23,108],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-3968","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\/3968","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\/3968\/revisions"}],"predecessor-version":[{"id":5889,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/3968\/revisions\/5889"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=3968"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=3968"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=3968"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=3968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}