GlideScopedEvaluator - Global

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • A API GlideScopedEvaluator permite que você avalie scripts em um campo GlideRecord de scripts de servidor com escopo e globais.

    Esta API avalia scripts dentro do tipo de campo de script. O escopo do registro define o escopo do script.

    GlideScopedEvaluator - GlideScopedEvaluator()

    Instancia um objeto GlideScopedEvaluator.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum(a)

    Equivalente com escopo

    Para usar o método GlideScopedEvaluator() em uma aplicação com escopo, use o método com escopo correspondente: GlideScopedEvaluator().

    GlideScopedEvaluator - avaliarScript(GlideRecord grObj, Cadeia de caracteres scriptField, Variáveis de objeto)

    Avalia um script de um campo GlideRecord.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    grObj GlideRecord O GlideRecord que contém uma expressão de script.
    scriptField Cadeia de caracteres (Opcional) O nome do campo que contém a expressão do script.
    variáveis Objeto (Opcional) Um mapa de variáveis com pares de nome-valor. Essas variáveis estão disponíveis para o script durante a execução deste método.
    Tabela 3. Retornos
    Tipo Descrição
    Objeto O resultado da execução do script.
    //For this example, we created a table: "x_app_table" with two columns: "short_description", "test_script"
    // "test_script" will store the script to be evaluated by GlideScopedEvaluator.
    var now_GR = new GlideRecord('x_app_table');
    now_GR.short_description = 'Testing GlideScopedEvaluator';
    now_GR.test_script = "gs.getUser().getName() + ' says ' + greeting; ";
    now_GR.insert();
    
    //setup variables to be used by the script
    var vars = {'greeting' : 'hello'};
    
    //Evaluate the script from the field
    var evaluator = new GlideScopedEvaluator();
    gs.info(evaluator.evaluateScript(now_GR, 'test_script', vars));
    
    // Now retrieve the result
    evaluator.evaluateScript(gr, 'u_test_script', null);
    gs.info(evaluator.getVariable('result'));
    Saída:
    admin says hello

    Equivalente com escopo

    Para usar o método avaliaScript() em uma aplicação com escopo, use o método com escopo correspondente: avaliaScript().

    GlideScopedEvaluator – getVariable(String name)

    Retorna uma variável de um objeto GlideScopedEvaluator.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    nome Cadeia de caracteres O nome da variável.
    Tabela 5. Retornos
    Tipo Descrição
    Objeto O valor da variável especificada.
    //setting up a record that contains the script to be executed.
    var now_GR = new GlideRecord('global'); 
    now_GR.u_short_description = 'Calculate Addition';  
    now_GR.u_test_script = "result = x + y"; 
    evaluator.evaluateScript(now_GR, "script")
    now_GR.insert(); 
     
    var evaluator = new GlideScopedEvaluator();
    evaluator.putVariable('x', 100);
    evaluator.putVariable('y', 200);
    evaluator.putVariable('result', null);
    evaluator.evaluateScript(now_GR, "script")
    now_GR.insert();
    Saída:
    300

    Equivalente com escopo

    Para usar o método getVariable() em uma aplicação com escopo, use o método com escopo correspondente: getVariable().

    GlideScopedEvaluator - putVariable(cadeia de caracteres nome, objeto valor)

    Coloca uma variável no objeto GlideScopedEvaluator. Essas variáveis estão disponíveis para o script que este objeto GlideScopedEvaluator executa.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    nome Cadeia de caracteres O nome da variável.
    valor Objeto O valor da variável.
    Tabela 7. Retornos
    Tipo Descrição
    vazio
    //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";
    evaluator.evaluateScript(now_GR, "script") 
    now_GR.insert(); 
     
    var evaluator = new GlideScopedEvaluator();
    evaluator.putVariable('x', 100);
    evaluator.putVariable('y', 200);
    evaluator.putVariable('result', null);
    evaluator.evaluateScript(now_GR, "script")
    now_GR.insert();
    Saída:
    300

    Equivalente com escopo

    Para usar o método putVariable() em uma aplicação com escopo, use o método com escopo correspondente: putVariable().