ANS-1602 · CHAMPS PERSONNALISéS, ENREGISTREMENTS ET FORMULAIRES

Comment définir automatiquement le champ « ID externe » sur les enregistrements NetSuite lors de la création et de la modification

Utilisez un script d'événement utilisateur « afterSubmit » pour renseigner l'identifiant externe, afin de garantir la disponibilité d'un identifiant d'enregistrement valide pour les mises à jour.

Solution courte

Pour définir automatiquement le champ « External ID » (ID externe) des enregistrements NetSuite lors de leur création et de leur modification, un script d’événement utilisateur `afterSubmit` est nécessaire. En effet, l’ID de l’enregistrement n’est pas disponible dans `beforeSubmit` pour les nouveaux enregistrements, ce qui empêche toute mise à jour directe dans `externalid`. Le script `afterSubmit` peut alors charger l'enregistrement, définir le champ `externalid` à l'aide de `record.setValue()`, puis enregistrer les modifications avec `record.submitFields()`.

Scénario

Les utilisateurs s'attendent souvent à ce que le champ « ID externe » des enregistrements NetSuite soit automatiquement renseigné en copiant un autre champ, tel que l'UPC, à l'aide d'un script d'événement utilisateur `beforeSubmit` lors de la création ou de la modification d'un enregistrement. Cependant, le champ « ID externe » présente un comportement particulier, et une mise à jour directe via `beforeSubmit` n’est pas possible, notamment parce que l’ID d’enregistrement n’est pas encore disponible pour les nouveaux enregistrements.

Solution

La configuration directe du champ externalid à l'aide de record.setValue('externalid', UPC) dans un script d'événement utilisateur beforeSubmit n'est pas efficace. Cette limitation s'explique par le fait que le champ externalid ne peut pas être défini directement dans beforeSubmit, en particulier lors de l'événement de création d'un enregistrement, car l'identifiant de l'enregistrement n'est pas encore disponible. La solution recommandée et efficace consiste à mettre en œuvre un script d’événement utilisateur afterSubmit pour les événements create et edit. Cela garantit que l’identifiant de l’enregistrement est disponible, ce qui permet d’effectuer la mise à jour nécessaire.nn

  1. Dans le script d’événement utilisateur afterSubmit, chargez l’enregistrement actuel.n

  2. Définissez le champ externalid sur la valeur souhaitée (par exemple, UPC) à l’aide de record.setValue('externalid', UPC).n

  3. Enregistrez les modifications en soumettant l’enregistrement à l’aide de record.submitFields.

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

Accompagnement-conseil et configuration pour Champs personnalisés, enregistrements et formulaires

Parler à un consultant