{"id":4320,"date":"2017-08-21T14:39:06","date_gmt":"2017-08-21T14:39:06","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/how-to-programmatically-retrieve-custom-list-values-in-netsuite-suitescript-2-x-2\/"},"modified":"2026-07-28T18:26:38","modified_gmt":"2026-07-28T18:26:38","slug":"comment-recuperer-par-programmation-les-valeurs-dune-liste-personnalisee-dans-netsuite-suitescript-2-x","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-recuperer-par-programmation-les-valeurs-dune-liste-personnalisee-dans-netsuite-suitescript-2-x\/","title":{"rendered":"Comment r\u00e9cup\u00e9rer par programmation les valeurs d&rsquo;une liste personnalis\u00e9e dans NetSuite SuiteScript 2.x"},"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":"D\u00e9couvrez comment acc\u00e9der aux noms et aux identifiants internes des entr\u00e9es de listes personnalis\u00e9es et les mapper \u00e0 l\u2019aide des modules de recherche SuiteScript 2.x.","ga_short_answer":"Pour r\u00e9cup\u00e9rer les valeurs d\u2019une liste personnalis\u00e9e dans NetSuite SuiteScript 2.x, utilisez le module `N\/search` afin de cr\u00e9er une recherche sur le type d\u2019enregistrement de la liste personnalis\u00e9e. Sp\u00e9cifiez \u00ab name \u00bb comme colonne pour obtenir la valeur d\u2019affichage. Les r\u00e9sultats peuvent ensuite \u00eatre mapp\u00e9s afin d\u2019extraire \u00e0 la fois le nom et l\u2019identifiant interne de chaque entr\u00e9e de la liste.","ga_scenario":"Les utilisateurs de NetSuite ont souvent besoin d\u2019acc\u00e9der par programmation aux valeurs stock\u00e9es dans une liste personnalis\u00e9e. Bien que les listes personnalis\u00e9es n\u2019apparaissent pas sous forme d\u2019enregistrements standard, leurs entr\u00e9es peuvent \u00eatre r\u00e9cup\u00e9r\u00e9es et trait\u00e9es \u00e0 l\u2019aide de SuiteScript. Cela s\u2019av\u00e8re n\u00e9cessaire lors de l\u2019int\u00e9gration des donn\u00e9es d\u2019une liste personnalis\u00e9e dans d\u2019autres scripts ou workflows.","ga_solution":"M\u00eame si une liste personnalis\u00e9e ne se comporte pas comme un enregistrement standard, ses valeurs peuvent \u00eatre r\u00e9cup\u00e9r\u00e9es par programmation \u00e0 l\u2019aide du module `N\/search` dans SuiteScript 2.x. Pour obtenir la liste des valeurs d\u2019une liste personnalis\u00e9e, effectuez une recherche sur l\u2019identifiant interne de cette liste et sp\u00e9cifiez \u00ab name \u00bb comme colonne de recherche afin de r\u00e9cup\u00e9rer la valeur d\u2019affichage. Le code SuiteScript 2.x suivant montre comment r\u00e9cup\u00e9rer et mettre en correspondance les noms et les identifiants internes des entr\u00e9es d\u2019une liste personnalis\u00e9e, en prenant `customlist_ehf_category` comme exemple :\n\n```\njavascript\n\/**\n * @NApiVersion 2.x\n * @NModuleScope SameAccount\n *\/\ndefine(['N\/search'], function(search) {\n    \/\/ This code snippet would typically be placed within a SuiteScript 2.x script entry point (e.g., execute, onRequest)\n    \/\/ or a custom module function.\n\n    var customListId = 'customlist_ehf_category'; \/\/ Replace with your custom list's internal ID\n\n    var results = [];\n    search.create({\n        type: customListId,\n        columns: [\n            search.createColumn({name: 'name'}),\n            search.createColumn({name: 'internalid'})\n        ]\n    }).run().each(function(result) {\n        results.push(result);\n        return true; \/\/ Return true to continue the iteration\n    });\n\n    var names = results.map(function(result) {\n        return result.getValue({name: 'name'});\n    });\n\n    var ids = results.map(function(result) {\n        return result.getValue({name: 'internalid'});\n    });\n\n    \/\/ The 'names' and 'ids' arrays now contain the respective values from the custom list.\n    \/\/ For demonstration, you might log them:\n    \/\/ log.debug('Custom List Names', names);\n    \/\/ log.debug('Custom List IDs', ids);\n});\n```\n\nCe script d\u00e9finit tout d\u2019abord le module `N\/search`, puis cr\u00e9e et ex\u00e9cute une recherche sur le type de liste personnalis\u00e9e sp\u00e9cifi\u00e9, en collectant tous les r\u00e9sultats. Enfin, il utilise la fonction `map` pour extraire les noms d\u2019affichage et les identifiants internes dans des tableaux distincts.","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T16:39:06+02:00","ga_date_verified":"2026-07-05","ga_source_subject":"Load values of custom list?","ga_ans_id":"ANS-0661","ga_publish_decision":"publish_with_edits","ga_staleness_risk":"high","ga_review_priority":"spot_check","ga_tier2_verdict":"partially_outdated","ga_tier2_concerns":"The use of `nlapiSearchRecord` is a SuiteScript 1.0 function, which is a previous version of SuiteScript and is no longer updated. The current recommended approach is to use the `N\/search` module in SuiteScript 2.x (e.g., `search.create()` and `search.run()`).; The methods `getValue('name', null, null)` and `getId()` are SuiteScript 1.0 specific. In SuiteScript 2.x, result objects are handled differently, typically using `result.getValue({name: 'name'})` and `result.id` or `result.getValue({name: 'internalid'})`.","ga_final_category":"SuiteScript Development","footnotes":""},"ga_category":[108,23,108],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-4320","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\/4320","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\/4320\/revisions"}],"predecessor-version":[{"id":6241,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4320\/revisions\/6241"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=4320"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=4320"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=4320"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=4320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}