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

Automatisation des valeurs des champs à sélection multiple dans les workflows NetSuite

Découvrez comment contourner les limitations des workflows NetSuite en utilisant une recherche enregistrée et un champ personnalisé pour remplir des champs à sélection multiple avec plusieurs valeurs.

Solution courte

Les workflows NetSuite ne parviennent souvent pas à remplir les champs à sélection multiple à partir de recherches enregistrées, ne capturant que la première valeur. Pour remplir plusieurs sélections, regroupez les identifiants internes dans une chaîne séparée par des virgules à l’aide d’une recherche enregistrée. Formatez ensuite cette chaîne à l’aide de REPLACE({custfield}, CHR(5)) et mappez-la temporairement via un champ de workflow personnalisé, initialement de type « sélection multiple » puis « texte libre », avant de définir le champ de destination de type « sélection multiple ».

Scénario

Les actions standard « Définir la valeur d’un champ » du workflow NetSuite sont conçues pour les champs à valeur unique. Lorsque vous tentez de remplir un champ à sélection multiple à l’aide d’une recherche enregistrée, le workflow échoue généralement car il ne récupère que la première ligne des résultats de recherche. Pour sélectionner plusieurs options avec succès, NetSuite nécessite une chaîne unique d’identifiants internes séparés par des virgules.

Solution

Pour réussir à remplir un champ à sélection multiple avec plusieurs valeurs issues d’une recherche enregistrée, une approche spécifique est nécessaire. Cela implique d’utiliser une recherche enregistrée pour regrouper les identifiants internes nécessaires, de les formater en une seule chaîne de caractères séparée par des virgules, puis d’utiliser un champ de workflow personnalisé pour contourner les restrictions de l’interface utilisateur. Le champ de workflow personnalisé est temporairement configuré en « Sélection multiple », puis basculé en « Texte libre » une fois la formule enregistrée, ce qui permet au workflow d’accepter la chaîne à valeurs multiples avant qu’elle ne soit appliquée au champ à sélection multiple cible. Veuillez suivre les étapes suivantes pour mettre en œuvre cette solution :

  1. Créez une recherche enregistrée incluant les critères relatifs aux entités destinées au champ à sélection multiple des transactions. Dans les résultats, créez une formule (texte) du type :

LISTAGG(DISTINCT {internalid}, ',')WITHIN GROUP(ORDER BY {internalid})

Regrouper par valeur maximale. Cette formule récupérera les identifiants internes des entités correspondant à vos critères.

  1. Créez un champ personnalisé (par exemple, une liste déroulante) sur la transaction que la recherche enregistrée utilisera comme critère de filtrage pour remplir dynamiquement la chaîne d’identifiants internes.

  2. Créez un champ d’état de workflow personnalisé de type « Liste/Enregistrement » avec l’option « Stocker la valeur » activée.

  3. Ajoutez une action « Définir la valeur du champ » au même état de workflow. Cette action doit utiliser la formule

REPLACE({custfield}, CHR(5))

pour remplir le champ d’état de workflow avec les valeurs générées à l’étape 2.

  1. À ce stade, le champ d’état du workflow ne se remplira pas correctement. Revenez en arrière et modifiez le champ d’état du workflow en changeant son type pour « Texte libre ».

  2. Créez un champ personnalisé de corps de transaction de type « Sélection multiple ».

  3. Ajoutez une autre action « Définir la valeur du champ » au workflow. Cette action attribuera au nouveau champ de sélection multiple (créé à l’étape 6) les valeurs stockées dans le champ d’état du workflow (issues de l’étape 5).

Support expert NetSuite

Besoin d’aide pour cet enjeu NetSuite ?

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

Parler à un consultant