---
sourceDocument: Référence de l’API Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Référence de l’API Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# GlideScopedEvaluator - Dans le champ d'application

# GlideScopedEvaluator - Dans le champ d'application {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes de lecture

L'API GlideScopedEvaluator vous permet d'évaluer les scripts dans un champ GlideRecord à partir des scripts serveur inclus dans le champ d'application et globaux.

Cette API évalue les enregistrements pour lesquels des champs de script sont définis. Le champ d'application du script est défini par le champ d'application de l'enregistrement.

## Évaluateur GlideScoped : GlideScopedEvaluator() {#ariaid-title2}

Instancie un objet GlideScopedEvaluator.
{#r_ScopedGlideEvaluatorGlideScopedEvaluator__table_twg_dgr_2r__entry__3}

| Nom | Type | Description |
|-|-|-|
| Aucun |   |   |
[Tableau 1. Paramètres]

{#r_ScopedGlideEvaluatorGlideScopedEvaluator__table_twg_dgr_2r}

## GlideScopedEvaluator : evaluateScript(GlideRecord grObj, String scriptField, variables d'objet) {#ariaid-title3}

Évalue un script qui réside dans un champ GlideRecord.
{#r_ScopedGlideEvaluatorEvaluateScript_GlideRecord_String_Object__table_l3r_hch_1r__entry__3}

| Nom | Type | Description |
|-|-|-|
| grObj | [GlideRecord](https://servicenow-prod.fluidtopics.net/2WySz5FCvQHHbdfx6_dFUg#c_GlideRecordScopedAPI "L’API GlideRecord incluse dans le périmètre d’application est utilisée pour les opérations de base de données.") | GlideRecord contenant une expression de script. |
| scriptField (en anglais seulement) | Chaîne | Facultatif. Nom du champ contenant l'expression de script. |
| variables | Objet | Facultatif. Carte de variables avec des paires nom-valeur. Ces variables sont disponibles pour le script lors de l'exécution de cette méthode. |
[Tableau 2. Paramètres]

{#r_ScopedGlideEvaluatorEvaluateScript_GlideRecord_String_Object__table_l3r_hch_1r} {#r_ScopedGlideEvaluatorEvaluateScript_GlideRecord_String_Object__table_bdf_zfr_2r__entry__2}

| Type | Description |
|-|-|
| Objet | Résultat de l'exécution du script. |
[Tableau 3. Renvoie]

{#r_ScopedGlideEvaluatorEvaluateScript_GlideRecord_String_Object__table_bdf_zfr_2r}  

    // Setting up a record that contains the script to be executed.
    var now_GR = new GlideRecord('u_global_table'); 
    now_GR.u_short_description = 'Calculate Addition';  
    now_GR.u_test_script = "result = x + y"; 
    now_GR.insert(); 
     
    var evaluator = new GlideScopedEvaluator();
    evaluator.putVariable('x', 100);
    evaluator.putVariable('y', 200);
    gs.info(evaluator.evaluateScript(now_GR, 'u_test_script'));

Sortie :

    300

## GlideScopedEvaluator : getVariable(nom de chaîne) {#ariaid-title4}

Renvoie une variable spécifiée à partir d'un objet GlideScopedEvaluator.
{#r_ScopedGlideEvaluatorGetVariable_String__table_e3v_4dh_1r__entry__3}

| Nom | Type | Description |
|-|-|-|
| nom | Chaîne | Nom de la variable à renvoyer. |
[Tableau 4. Paramètres]

{#r_ScopedGlideEvaluatorGetVariable_String__table_e3v_4dh_1r} {#r_ScopedGlideEvaluatorGetVariable_String__table_v5f_hgr_2r__entry__2}

| Type | Description |
|-|-|
| Objet | Valeur de la variable spécifiée. |
[Tableau 5. Renvoie]

{#r_ScopedGlideEvaluatorGetVariable_String__table_v5f_hgr_2r}  
L'exemple suivant montre comment appeler la méthode getVariable() pour vérifier la valeur de la variable de <var class="keyword varname">réponse</var> .

    (function executeRule(current, previous /*null when async*/) {
      var grAG = current.assignment_group.getRefRecord(); // Get the GlideRecord of the assignment group
      if (grAG.isValidRecord()) {
        var ge = new GlideScopedEvaluator();
        ge.putVariable("current", current); // Pass through the "current" variable as "current"
        ge.putVariable("group", grAG); // Pass through the "grAG" variable as "group"
        ge.putVariable("answer", true); // default "answer" to TRUE
        ge.evaluateScript(grAG, "u_assignment_condition"); // Run the script

        // Abort the transaction if the "answer" variable was set to FALSE explicitly (undefined doesn't count)
        if (ge.getVariable("answer") === false) { 
          gs.addErrorMessage("Assignment rule did not pass");
          current.setAbortAction(true);
        }
      }
    })(current, previous);

## GlideScopedEvaluator : putVariable(nom de chaîne, valeur de l'objet) {#ariaid-title5}

Définit une variable dans l'objet GlideScopedEvaluator. Ces variables sont disponibles pour le script exécuté par cet objet GlideScopedEvaluator.
{#r_ScopedGlideEvaluatorPutVariable_String_Object__table_e11_f2h_1r__entry__3}

| Nom | Type | Description |
|-|-|-|
| nom | Chaîne | Nom de la variable. |
| valide | Objet | Valeur de la variable. |
[Tableau 6. Paramètres]

{#r_ScopedGlideEvaluatorPutVariable_String_Object__table_e11_f2h_1r} {#r_ScopedGlideEvaluatorPutVariable_String_Object__table_hpj_bgr_2r__entry__2}

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 7. Renvoie]

{#r_ScopedGlideEvaluatorPutVariable_String_Object__table_hpj_bgr_2r}  
L'exemple suivant montre comment appeler la méthode putVariable() pour définir la variable <var class="keyword varname">answer</var> sur true.

    (function executeRule(current, previous /*null when async*/) {
      var grAG = current.assignment_group.getRefRecord(); // Get the GlideRecord of the assignment group
      if (grAG.isValidRecord()) {
        var ge = new GlideScopedEvaluator();
        ge.putVariable("current", current); // Pass through the "current" variable as "current"
        ge.putVariable("group", grAG); // Pass through the "grAG" variable as "group"
        ge.putVariable("answer", true); // Set default "answer" to TRUE
        ge.evaluateScript(grAG, "u_assignment_condition"); // Run the script

        // Abort the transaction if the "answer" variable was set to FALSE explicitly (undefined doesn't count)
        if (ge.getVariable("answer") === false) { 
          gs.addErrorMessage("Assignment rule did not pass");
          current.setAbortAction(true);
        }
      }
    })(current, previous);


