ANS-1514 · DéVELOPPEMENT SUITESCRIPT

Comment créer un dossier par programmation dans NetSuite à l’aide de SuiteScript ?

Apprenez à automatiser la création de nouveaux dossiers de classement dans NetSuite à l'aide des API modernes SuiteScript 2.x.

Solution courte

Pour créer un dossier dans NetSuite à l'aide d'un script, utilisez `record.create` de SuiteScript 2.x pour instancier un enregistrement « dossier ». Définissez ses champs `parent` et `name` à l'aide de `record.setValue`. Enfin, enregistrez le nouveau dossier à l’aide de `record.save` et consignez l’identifiant du dossier obtenu à des fins de confirmation.

Scénario

Les administrateurs ou développeurs NetSuite ont souvent besoin de gérer par programmation l’arborescence de fichiers, notamment pour créer de nouveaux dossiers. La création manuelle d’un grand nombre de dossiers peut s’avérer chronophage et source d’erreurs. L’automatisation de ce processus garantit cohérence et efficacité, en particulier pour les tâches d’intégration ou de migration de données.

Solution

Pour créer un dossier par programmation dans NetSuite, les développeurs peuvent utiliser SuiteScript 2.x. Le processus consiste à créer un nouvel enregistrement de dossier, à définir ses propriétés telles que le dossier parent et le nom, puis à enregistrer l’enregistrement. L’exemple SuiteScript 2.x suivant montre comment créer un dossier au niveau racine :

javascript
/**
 * @NApiVersion 2.x
 * @NModuleScope SameAccount
 */
define(['N/record', 'N/log'], function(record, log) {
    function createNewFolderExample() {
        try {
            // Create a new folder record
            var folderRecord = record.create({
                type: record.Type.FOLDER,
                isDynamic: true // Set to true if you need to set values dynamically
            });

            // Set the parent field to create a root-level folder
            folderRecord.setValue({
                fieldId: 'parent',
                value: ''
            });

            // Set the name of the new folder
            folderRecord.setValue({
                fieldId: 'name',
                value: 'Created from SuiteScript'
            });

            // Save the folder record to create it in NetSuite
            var folderId = folderRecord.save();

            // Log the ID of the newly created folder for confirmation
            log.debug({
                title: 'New Folder Created Successfully',
                details: 'New folder ID: ' + folderId
            });

            return folderId; // Return the ID of the new folder

        } catch (e) {
            log.error({
                title: 'Error Creating Folder',
                details: e.message
            });
            return null;
        }
    }
    return {
        createNewFolderExample: createNewFolderExample
    };
});

Ce script utilise le module N/record pour créer et enregistrer le dossier, et le module N/log pour afficher l’identifiant du nouveau dossier à des fins de débogage. Le champ parent est défini sur une chaîne vide afin de désigner le dossier comme dossier de niveau supérieur dans le File Cabinet.

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

Accompagnement-conseil et configuration pour Développement SuiteScript

Parler à un consultant