ANS-0569 · DéVELOPPEMENT SUITESCRIPT
Comment utiliser efficacement la fonction `render.emailMerge` dans les scripts Map/Reduce de NetSuite ?
Découvrez les exigences essentielles relatives au type de paramètre pour que la fonction `render.emailMerge` fonctionne correctement dans les scripts côté serveur de NetSuite, tels que Map/Reduce.
Solution courte
Pour utiliser correctement la fonction render.emailMerge dans les scripts côté serveur de NetSuite, tels que Map/Reduce, veillez à ce que les paramètres templateId et entity.id soient convertis en nombres à l’aide de la fonction parseInt(). Le fait de transmettre ces valeurs sous forme de chaînes de caractères empêchera la fonction de s’exécuter correctement, ce qui entraînera un comportement inattendu.
Scénario
Les développeurs NetSuite qui tentent d’utiliser la fonction `render.emailMerge` dans des scripts côté serveur, tels que Map/Reduce, peuvent rencontrer des échecs inattendus. Contrairement à ce que l’on pourrait croire à première vue, cette fonction est en réalité compatible avec ces types de scripts. La cause première du problème réside souvent dans la manière dont les paramètres sont transmis à la fonction.
Solution
Pour garantir le bon fonctionnement de la fonction render.emailMerge dans les scripts côté serveur de NetSuite, il est essentiel de convertir les paramètres templateId et entity.id en nombres. La fonction n'acceptera pas ces paramètres s'ils sont transmis sous forme de chaînes de caractères. Ceci ne fonctionnera PAS :
var emailMergeResult render.mergeEmail({templateId: emailTemplateInternalId,entity: {type: 'customer',id: customerInternalId}});. Ceci fonctionnera :
GA_KEEP_0002.
Support expert NetSuite
Besoin d’aide pour cet enjeu NetSuite ?
Accompagnement-conseil et configuration pour Développement SuiteScript
