{"id":2609,"date":"2017-08-21T15:21:35","date_gmt":"2017-08-21T15:21:35","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/how-to-set-a-custom-date-field-value-in-netsuite-suitescript-2-x-2\/"},"modified":"2026-07-28T18:25:04","modified_gmt":"2026-07-28T18:25:04","slug":"comment-definir-la-valeur-dun-champ-de-date-personnalise-dans-netsuite-suitescript-2-x","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-definir-la-valeur-dun-champ-de-date-personnalise-dans-netsuite-suitescript-2-x\/","title":{"rendered":"Comment d\u00e9finir la valeur d&rsquo;un champ de date personnalis\u00e9 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 la m\u00e9thode SuiteScript 2.x appropri\u00e9e pour mettre \u00e0 jour par programmation les champs de date personnalis\u00e9s des enregistrements NetSuite et vous assurer que les modifications sont bien enregistr\u00e9es.","ga_short_answer":"Pour d\u00e9finir un champ de date personnalis\u00e9 dans SuiteScript 2.x, utilisez `record.setValue({ fieldId: 'your_field_id', value: new Date() })` sur un objet d'enregistrement charg\u00e9 ou cr\u00e9\u00e9. N'oubliez jamais d'enregistrer l'objet \u00e0 l'aide de `record.save()` apr\u00e8s avoir d\u00e9fini les valeurs des champs afin de conserver les modifications ; en effet, si vous oubliez de valider l'objet, les modifications ne seront pas appliqu\u00e9es.","ga_scenario":"Un utilisateur doit mettre \u00e0 jour par programmation un champ de date personnalis\u00e9 dans un enregistrement NetSuite \u00e0 l\u2019aide de SuiteScript. Il rencontre des difficult\u00e9s pour d\u00e9finir correctement la valeur du champ et s\u2019assurer que les modifications sont bien enregistr\u00e9es dans l\u2019enregistrement.","ga_solution":"La proc\u00e9dure permettant de d\u00e9finir la valeur d\u2019un champ de date personnalis\u00e9 dans SuiteScript 2.x consiste \u00e0 charger ou \u00e0 cr\u00e9er l\u2019enregistrement cible, \u00e0 utiliser la m\u00e9thode `record.setValue(options)` avec le type de donn\u00e9es appropri\u00e9, puis \u00e0 enregistrer l\u2019enregistrement pour que les modifications soient prises en compte.\n1. Commencez par obtenir une r\u00e9f\u00e9rence \u00e0 l\u2019objet d\u2019enregistrement. Pour ce faire, il suffit g\u00e9n\u00e9ralement de <a class=\"ga-interlink\" href=\"https:\/\/answers.gurussolutions.com\/fr\/answers\/can-you-load-netsuite-records-with-view-permissions-in-suitescript\/\">charger un enregistrement existant<\/a> \u00e0 l\u2019aide de `record.load()` ou d\u2019en cr\u00e9er un nouveau avec `record.create()` \u00e0 partir du module `N\/record`.\n2. Pour d\u00e9finir la valeur d\u2019un champ de date personnalis\u00e9, utilisez la m\u00e9thode `record.setValue()`. Il est essentiel de fournir un objet JavaScript `Date` comme valeur ; toute tentative d\u2019attribuer une cha\u00eene de caract\u00e8res (par exemple, \u00ab hello \u00bb) \u00e0 un champ de date entra\u00eenera une erreur `INVALID_FLD_VALUE`.\n3. Une fois la valeur du champ d\u00e9finie, l\u2019enregistrement doit \u00eatre explicitement enregistr\u00e9 \u00e0 l\u2019aide de `record.save()` pour que les modifications soient prises en compte dans NetSuite.L'exemple SuiteScript 2.x suivant montre comment charger un enregistrement, d\u00e9finir un champ de date personnalis\u00e9 (`custevent_assignee_email_date`) sur la date du jour, puis enregistrer l'enregistrement :\n\n```\njavascript\/** * @NApiVersion 2.x * @NScriptType UserEventScript *\/define(['N\/record', 'N\/log'], function(record, log) {    function afterSubmit(context) {        if (context.type === context.UserEventType.CREATE || context.type === context.UserEventType.EDIT) {            try {                \/\/ Load the current record in dynamic mode to easily set values                var currentRecord = record.load({                    type: context.newRecord.type,                    id: context.newRecord.id,                    isDynamic: true                });                \/\/ Set the custom date field 'custevent_assignee_email_date' with a Date object                \/\/ Note: Setting a string like 'hello' to a date field will cause an INVALID_FLD_VALUE error.                currentRecord.setValue({                    fieldId: 'custevent_assignee_email_date',                    value: new Date() \/\/ Sets the field to the current date and time                });                \/\/ Save the record to persist the changes                var recordId = currentRecord.save();                log.debug('Record Update', 'Record ID: ' + recordId + ' updated with new date for custevent_assignee_email_date.');            } catch (e) {                log.error('Error setting custom date field', e.toString());            }        }    }    return {        afterSubmit: afterSubmit    };});\n```","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T17:21:35+02:00","ga_date_verified":"2026-07-05","ga_source_subject":"set custom field with date","ga_ans_id":"ANS-0870","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 `setFieldValue` has been replaced by `record.setValue(options)` in SuiteScript 2.x.; The variable `projTaskRecord` is not a standard global record object in SuiteScript 2.x; records are typically accessed via the `N\/record` module (e.g., `record.load`, `record.create`).; Setting a string value ('hello') to a date field would cause an `INVALID_FLD_VALUE` error, as `record.setValue` requires the value type to correspond to the field type (e.g., a Date object for a date field).","ga_final_category":"SuiteScript Development","footnotes":""},"ga_category":[108,23,108],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-2609","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\/2609","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\/2609\/revisions"}],"predecessor-version":[{"id":4529,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/2609\/revisions\/4529"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=2609"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=2609"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=2609"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=2609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}