---
sourceDocument: Gestion des services sur site de Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/yokohama/field-service-management

 Release :

    - yokohama

ft:locale :

    - fr-FR

ft:publication_title :

    - Gestion des services sur site de Yokohama

ft:clusterId :

    - fsm

bundleId :

    - fsm

workflow :

    - Customer and Industry


---

# Fournir un script pour les critères de recommandation de tâches personnalisées

# Fournir un script pour les critères de recommandation de tâches personnalisées {#ariaid-title1}

* Rversion finale: Yokohama
* 
* Mis à jour 30 janv. 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute de lecture

Directives pour la création de scripts dans les critères de recommandation d'une politique de recommandation intelligente de tâche.

## Objet de retour du script de personnalisation {#script-guidelines-recommendation-criteria__section_lp5_22d_gqb}

Votre script doit renvoyer un objet JavaScript sous une forme minimale comme suit :  

    { 
      "<task sys_id1>": 
        {
          "rating": <rating1>
        },
      "<task sys_id2>":
        {
          "rating": <rating2>
        },
      ...
    }

Pour les contraintes de filtre, définissez l'évaluation des objets de retour sur un pour unifier le résultat de la contrainte de filtre des critères de recommandation à l'aide des sn_task_recommend. TaskRecommendationUtil.setRatingToOne(votre objet) ; méthode.
Pour normaliser le résultat de notation des critères de classement, l'objet JavaScript de retour doit inclure des informations de normalisation.

    {           
        "<task <sys_id1>":     
            {
                "rating": <rating1>, 
                "normalizationData": 
                    {
                        "numerator": <numerator value1>,
                        "denominator": <denominator value1> 
                    }
            },    
        "<task <sys_id2>":     
            {
                "rating": <rating2>, 
                "normalizationData": 
                    {
                        "numerator": <numerator value2>,
                        "denominator": <denominator value2> 
                    }
            },
        ...
    }

Pour les critères de classement, l'objet de retour peut contenir des données pour la normalisation finale.  
Remarque :  
Si vos scripts incluent des données de normalisation, vous pouvez vous référer aux includes de script par défaut dans les critères de recommandation prédéfinis :

* La contrainte de filtrage Exclure les tâches où l'agent ne peut pas se rendre : sn_fsm_task_rec. TaskRecommendationDistanceRuleProcessor
* Critères de classement Distance de la tâche : rankTaskOnDistance()
{#script-guidelines-recommendation-criteria__ul_s1g_3g4_gqb}

## Script personnalisé dans les critères de recommandation {#script-guidelines-recommendation-criteria__section_j43_zgd_gqb}

L'exemple suivant montre comment écrire un script pour les critères de recommandation.

    var customizedScript = <your-script>; 
    var customizedResult = customizedScript.<your-method>(); 
    ruleResult = TaskRecommendationFSMUtil.parseRuleResult(customizedResult, "<customized-rule>");

L'exemple de configuration suivant fournit une contrainte de filtre \<\< distance de la tâche \>\>.

    var distanceRule = new TaskRecommendationDistanceRuleProcessor(args); 
    var ruleProcessResult = distanceRule.processRule(user, tasks, timeStart, timeEnd, 'ranking'); 
    ruleResult = TaskRecommendationFSMUtil.parseRuleResult(ruleProcessResult, "Distance from task");

Remarque :  
Ne pas remplacer le mot clé de l'application de recommandation de tâche `ruleResult` dans le script par d'autres mots. Sinon, l'application ne sera pas en mesure de traiter le résultat de l'exécution de la règle.

