---
sourceDocument: Gestão de serviços de campo Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/field-service-management

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Gestão de serviços de campo Xanadu

ft:clusterId :

    - fsm

bundleId :

    - fsm

workflow :

    - Customer and Industry


---

# Como fornecer um script para critérios de recomendação de tarefa personalizada

# Como fornecer um script para critérios de recomendação de tarefa personalizada {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 min. de leitura

Diretrizes para criar scripts em critérios de recomendação para uma política de recomendação de tarefa inteligente.

## Objeto de retorno do script de personalização {#script-guidelines-recommendation-criteria__section_lp5_22d_gqb}

Seu script deve retornar um objeto JavaScript em um formulário mínimo da seguinte forma:  

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

Para restrições de filtro, defina a classificação de objetos de retorno como um para unificar o resultado da restrição de filtro dos critérios de recomendação usando sn_task_recommend.TaskRecommendationUtil.setRatingToOne(your object); método.
Para normalizar o resultado da classificação dos critérios de classificação, o objeto JavaScript de retorno deve incluir informações de normalização.

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

Para critérios de classificação, o objeto de retorno pode conter dados para normalização final.  
Nota:  
Se seus scripts incluírem dados de normalização, você poderá consultar as inclusões de script padrão nos critérios de recomendação predefinidos:

* O agente de exclusão de tarefas de restrição de filtragem não pode viajar para: sn_fsm_task_rec.TaskRecommendationDistanceRuleProcessor
* Os critérios de classificação Distância da tarefa: rankTaskOnDistance()
{#script-guidelines-recommendation-criteria__ul_s1g_3g4_gqb}

## Script personalizado nos critérios de recomendação {#script-guidelines-recommendation-criteria__section_j43_zgd_gqb}

O exemplo a seguir mostra como escrever um script para os critérios de recomendação.

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

A configuração de exemplo a seguir fornece uma restrição de filtro "distância da tarefa".

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

Nota:  
Não substitua a regra de palavra-chave da aplicação de recomendação de `tarefaResultar` no script por outras palavras. Caso contrário, a aplicação não poderá processar o resultado da execução da regra.

