Créez un script de carte de transformation onBefore pour copier le sys_id de nouveaux enregistrements de l’instance source vers l’instance cible. Créez un deuxième script de carte de transformation onBefore pour identifier les enregistrements de l’instance cible qui ont les mêmes valeurs uniques, mais des valeurs sys_id différentes.
Procédure
-
Ouvrez l’enregistrement de carte de transformation de table que vous avez créé.
-
Cliquez sur Nouveau dans la liste connexe Scripts de transformation.
-
Dans le champ Quand , sélectionnez onBefore.
-
Entrez le script suivant :
if (action == "insert") {target.setNewGuidValue(source.u_sys_id); }
-
Cliquez sur Envoyer.
-
Cliquez sur Nouveau dans la liste connexe Scripts de transformation.
-
Dans le champ Quand , sélectionnez onBefore.
-
Entrez le script suivant :
/**
* This script queries for a uniquely identifying value of the referenced record and then
* updates the target reference field with the sys_id of the matching target record.
* This sample assumes:
* 1) The target table contains an assigned_to field which is a reference field.
* 2) The reference field references the User [sys_user] table.
* 3) You can use the email field to uniquely identify users. Alternatively you
* could use the user_name field.
*/
var ref = new GlideRecord("sys_user"); //Replace sys_user with any reference table
ref.addQuery("email", source.email); //Replace email with any unique field
ref.query();
if(ref.next()){
target.assigned_to = ref.sys_id; //Replace assigned_to with any reference field
}
-
Cliquez sur Envoyer.