{"id":4046,"date":"2017-08-21T15:10:43","date_gmt":"2017-08-21T15:10:43","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/how-to-access-vendor-record-field-values-in-suitescript-2-x-aftersubmit-2\/"},"modified":"2026-07-28T18:26:21","modified_gmt":"2026-07-28T18:26:21","slug":"comment-acceder-aux-valeurs-des-champs-dune-fiche-fournisseur-dans-suitescript-2-x-apres-la-soumission-aftersubmit","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-acceder-aux-valeurs-des-champs-dune-fiche-fournisseur-dans-suitescript-2-x-apres-la-soumission-aftersubmit\/","title":{"rendered":"Comment acc\u00e9der aux valeurs des champs d&rsquo;une fiche fournisseur dans SuiteScript 2.x apr\u00e8s la soumission (\u00ab afterSubmit \u00bb)"},"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":"Comprenez pourquoi l'acc\u00e8s direct aux enregistrements dans les scripts afterSubmit de SuiteScript 2.x peut s'av\u00e9rer peu fiable et d\u00e9couvrez la m\u00e9thode appropri\u00e9e pour r\u00e9cup\u00e9rer les donn\u00e9es de champs persistantes.","ga_short_answer":"Dans SuiteScript 2.x, l\u2019objet `newRecord` d\u2019un script d\u2019\u00e9v\u00e9nement utilisateur `afterSubmit` est en lecture seule. Pour acc\u00e9der de mani\u00e8re fiable aux valeurs des champs de l\u2019enregistrement persistant, en particulier pour les champs susceptibles d\u2019\u00eatre modifi\u00e9s par d\u2019autres scripts ou workflows lors de la soumission, utilisez N\/search.lookupFields ou record.lookupFields afin de r\u00e9cup\u00e9rer les donn\u00e9es directement \u00e0 partir de l\u2019enregistrement sauvegard\u00e9.","ga_scenario":"Lorsque vous tentez de r\u00e9cup\u00e9rer les valeurs des champs d\u2019un enregistrement \u00ab Fournisseur \u00bb dans un script d\u2019\u00e9v\u00e9nement utilisateur \u00ab afterSubmit \u00bb dans NetSuite, l\u2019acc\u00e8s direct via record.getValue() sur l\u2019objet context.newRecord peut ne pas toujours fournir les donn\u00e9es persistantes les plus r\u00e9centes ou les plus fiables. Cela s\u2019explique par le fait que l\u2019objet newRecord, dans ce contexte, est en lecture seule et repr\u00e9sente l\u2019enregistrement tel qu\u2019il a \u00e9t\u00e9 soumis, et non n\u00e9cessairement son \u00e9tat final apr\u00e8s l\u2019ex\u00e9cution de tous les processus syst\u00e8me et autres scripts.","ga_solution":"Pour garantir une r\u00e9cup\u00e9ration pr\u00e9cise des valeurs des champs d\u2019un enregistrement \u00ab Fournisseur \u00bb (ou de tout autre type d\u2019enregistrement) dans un script d\u2019\u00e9v\u00e9nement utilisateur \u00ab afterSubmit \u00bb, il est recommand\u00e9 d\u2019effectuer une recherche sur l\u2019enregistrement persist\u00e9 plut\u00f4t que de se fier uniquement \u00e0 l\u2019objet \u00ab context.newRecord \u00bb, qui est en lecture seule. Cette approche garantit que les valeurs r\u00e9cup\u00e9r\u00e9es refl\u00e8tent l\u2019\u00e9tat de l\u2019enregistrement apr\u00e8s qu\u2019il a \u00e9t\u00e9 enti\u00e8rement enregistr\u00e9 et trait\u00e9.\n\n1. R\u00e9cup\u00e9rez l\u2019identifiant interne de l\u2019enregistrement \u00e0 partir de `context.newRecord`.\n2. Utilisez `N\/search.lookupFields` (ou `record.lookupFields` si le type d\u2019enregistrement est connu et que vous disposez de l\u2019identifiant de l\u2019enregistrement) pour interroger l\u2019enregistrement persist\u00e9 afin d\u2019obtenir les valeurs de champ souhait\u00e9es.\n\nExemple d\u2019utilisation de N\/search.lookupFields :\n```\njavascript\n\/**\n * @NApiVersion 2.x\n * @NScriptType UserEventScript\n *\/\ndefine(['N\/search', 'N\/record'], function(search, record) {\n    function afterSubmit(context) {\n        if (context.type === context.UserEventType.CREATE || context.type === context.UserEventType.EDIT) {\n            var vendorId = context.newRecord.id;\n            var vendorType = context.newRecord.type;\n\n            \/\/ Lookup specific fields from the persisted record\n            var lookedUpFields = search.lookupFields({\n                type: vendorType,\n                id: vendorId,\n                columns: ['entityid', 'companyname', 'email'] \/\/ Replace with actual field IDs\n            });\n\n            var vendorName = lookedUpFields.entityid;\n            var companyName = lookedUpFields.companyname;\n            var vendorEmail = lookedUpFields.email;\n\n            \/\/ Further processing with the retrieved values\n            \/\/ log.debug('Vendor Name', vendorName);\n            \/\/ log.debug('Company Name', companyName);\n            \/\/ log.debug('Vendor Email', vendorEmail);\n        }\n    }\n    return {\n        afterSubmit: afterSubmit\n    };\n});\n```\nCette m\u00e9thode garantit que le script acc\u00e8de aux donn\u00e9es les plus r\u00e9centes et les plus fiables pour le traitement post-soumission.","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T11:10:43-04:00","ga_date_verified":"2026-07-05","ga_source_subject":"SOL0509 Vendor record returns NULL when nlapiGetFieldValue is called in Aftersubmit","ga_ans_id":"ANS-0387","ga_publish_decision":"publish_with_edits","ga_staleness_risk":"high","ga_review_priority":"spot_check","ga_tier2_verdict":"partially_outdated","ga_tier2_concerns":"The answer uses SuiteScript 1.0 function names (nlapiGetFieldValue, nlapiLookupField) which are considered outdated; SuiteScript 2.x is the current standard.; While the core issue of challenges with direct record manipulation in afterSubmit remains, the specific claim that 'nlapiGetFieldValue' *returns NULL* for a vendor record in afterSubmit might be an oversimplification. In SuiteScript 2.x, 'context.newRecord' in afterSubmit is read-only, and while 'record.getValue()' (the 2.x equivalent) should return the submitted value, direct modification of the record is not possible, often necessitating a lookup for reliable data access or subsequent actions.","ga_final_category":"SuiteScript Development","footnotes":""},"ga_category":[108,23,108],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-4046","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\/4046","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\/4046\/revisions"}],"predecessor-version":[{"id":5967,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4046\/revisions\/5967"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=4046"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=4046"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=4046"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=4046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}