---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Script do lado do servidor

# Script do lado do servidor {#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

Os scripts do servidor são executados no servidor ou no banco de dados. Eles podem mudar a aparência ou o comportamento da ServiceNow ou ser executados como regras de negócio quando registros e tabelas são acessados ou modificados.

As APIs do Glide do lado do servidor (Interfaces de programação de aplicações) fornecem classes e métodos que você pode usar em scripts para executar tarefas do lado do servidor.

## Expressões de função invocadas imediatamente {#c_ServerScripting__section_qqw_jcd_vhb}

O sistema usa expressões de função invocadas imediatamente quando um script é executado em um único contexto, como em um [Criar um mapa de transformação](https://www.servicenow.com/docs/access?context=t_CreateATransformMap&version=xanadu&pubname=xanadu-integrate-applications&ft:locale=en-US). As funções executadas a partir de vários contextos usam [Inclusões de script](https://servicenow-prod.fluidtopics.net/hBKCoLz4tMazFF7P4Z6kOw#c_ScriptIncludes "As inclusões de script são usadas para armazenar o JavaScript executado no servidor.").  
Ao incluir um script em uma expressão de função invocada imediatamente, você pode:

* Certifique-se de que o script não afete outras áreas do produto, como sobrescrevendo variáveis globais.
* Passe variáveis ou objetos úteis como parâmetros.
* Identifique nomes de função em rastreamentos de pilha.
* Elimine a necessidade de fazer chamadas de função separadas.
{#c_ServerScripting__ul_ghj_mfv_lx}

Uma expressão de função invocada imediatamente segue este formato:

    (function functionName(parameter){
     
      //The script you want to run
     
    })('value');//Note the parenthesis indicating this function should run.

Você pode declarar funções na expressão de função invocada imediatamente. Essas funções internas são acessíveis somente de dentro da expressão de função imediatamente invocada.

    (function functionName(parameter){
     
      function helperFunction(parameter){//return some value}
     
      var value = helperFunction(parameter);//Valid function call.
     
      //perform any other script actions
     
    })('value');
     
    var value2 = helperFunction(parameter);//Invalid. This function is not accessible from outside the self-executing function.

* **[APIs do Glide Server](https://servicenow-prod.fluidtopics.net/t5OHiOi5A1ubcXB2EjjxWw#p_GlideServerAPIs)**   
  ServiceNow fornece APIs para o Glide Server.
* **[Regras de negócio clássicas](https://servicenow-prod.fluidtopics.net/VJKGwYLTy3v9_ZyYIYjH5w#c_BusinessRules)**   
  Uma regra de negócio é um script do lado do servidor que é executado quando um registro é exibido, inserido, atualizado ou excluído, ou quando uma tabela é consultada.
* **[Inclusões de script](https://servicenow-prod.fluidtopics.net/hBKCoLz4tMazFF7P4Z6kOw#c_ScriptIncludes)**   
  As inclusões de script são usadas para armazenar o JavaScript executado no servidor.
* **[Processadores](https://servicenow-prod.fluidtopics.net/BBU6h_d9acDdXB7KnBznzg)**   
  Os processadores fornecem um endpoint de URL personalizável que pode executar código JavaScript arbitrário do lado do servidor e produzir saída como TEXT ou JSON. A criação de processadores personalizados está obsoleta.
* **[Scripts - Módulo em segundo plano](https://servicenow-prod.fluidtopics.net/DidfgQe93DVS~ZDbUNL~9A)**   
  Os administradores podem usar o módulo Scripts - Segundo plano para executar código JavaScript arbitrário do servidor.
* **[Configurações de instalação](https://servicenow-prod.fluidtopics.net/M16LaP2i_FoGYls6AcmZFw)**   
  As configurações de instalação são regras de negócio globais com nomes calculados. As configurações de instalação são calculadas pouco antes de um registro ser exibido e facilitam a determinação dinâmica de acesso e funções. As Configurações de instalação permitem a determinação programática de uma configuração.
* **[Como usar DurationCalculator para calcular uma data de vencimento](https://servicenow-prod.fluidtopics.net/VBPmYF3d~uLGUU~DNYg~QA#c_DrtnClDueDate)**   
  Usando a inclusão de script DurationCalculator, você pode calcular uma data de vencimento, usando uma duração simples ou uma base de duração relativa em cronogramas.
* **[Consultando tabelas no script](https://servicenow-prod.fluidtopics.net/HSQYIzeD1fsU9u3CTfye5A#c_UsingGlideRecordToQueryTables)**   
  Usando métodos na API GlideRecord, você pode retornar todos os registros de uma tabela, retornar registros de uma tabela que atendem a condições específicas ou retornar registros que incluem uma cadeia de caracteres de uma única tabela ou de várias tabelas em um grupo de índice de texto.
* **[A ordem de execução é guiada automaticamente](https://servicenow-prod.fluidtopics.net/IWp7CbedTg3WCBOiZqmcGw#c_RunningOrderGuidesAutomatically)**   
  Os guias de pedido do catálogo de serviços permitem que os clientes façam uma única solicitação do catálogo de serviços que pode gerar vários itens solicitados. Os administradores podem configurar guias de pedido para serem executados automaticamente, a partir de um fluxo de trabalho ou de um script para gerar um conjunto de itens solicitados sem enviar manualmente uma solicitação do catálogo de serviços. Os administradores também podem revisar e reprocessar as falhas do guia de pedido.
* **[Atribuição programável de planos de execução](https://servicenow-prod.fluidtopics.net/O8k8cR7~qcHAUODNnJtfcw#c_ScptblAsmtExctnPlns)**   
  Cada item do catálogo tem um plano de execução associado, usado sempre que um item desse tipo é solicitado; se nenhum plano for especificado, o plano padrão será usado. Este padrão é eficaz para a maioria das organizações, mas seu plano de execução pode precisar variar com base em critérios adicionais.
* **[Uso de expressões regulares em scripts do lado do servidor](https://servicenow-prod.fluidtopics.net/SuObvhmUqafh8468CQBsEg)**   
  As expressões regulares JavaScript usam automaticamente um mecanismo regex aprimorado, que oferece desempenho aprimorado e oferece suporte a todos os comportamentos de expressões regulares padrão, conforme definido pelo JavaScript da Mozilla. O mecanismo regex aprimorado oferece suporte ao uso da sintaxe Java em expressões regulares.
* **[Variáveis do Catálogo de serviços com script](https://servicenow-prod.fluidtopics.net/fLpjcUHQZnRq6LpAb1MeNA)**   
  Você pode usar script para fazer referência a qualquer variável de item da solicitação de uma tabela em ambiente com escopo e sem escopo.
* **[Definir uma variável GlideRecord como nula](https://servicenow-prod.fluidtopics.net/Uxkn9ulzgY9JRDTU_XvbTw)**   
  As variáveis GlideRecord (incluindo as atuais) são inicialmente nulas no banco de dados. Definir novamente como uma cadeia de caracteres vazia, um espaço ou o valor nulo de JavaScript não resultará em um retorno a este estado inicial.
* **[Páginas do cronograma](https://servicenow-prod.fluidtopics.net/X5PzL8U82EhjnNEESYqIzA#c_SchedulePages)**   
  Uma página de programação é um registro que contém uma coleção de scripts que permitem a geração personalizada de uma exibição de calendário ou linha do tempo.
* **[Objeto de script XMLDocument](https://servicenow-prod.fluidtopics.net/6yVadNzrOX3pBprXyKoVAg)**   
  Um wrapper de objeto JavaScript para analisar e extrair dados XML de um documento XML (cadeia de caracteres).
* **[Mecanismo JavaScript na plataforma](https://servicenow-prod.fluidtopics.net/hvUCXV1N~gjjI1YCnU7b0g)**   
  O mecanismo JavaScript que avalia scripts do lado do servidor é compatível com o padrão ECMAScript 2021 (ES12).
* **[Ajuda sensível ao contexto da API JavaScript](https://servicenow-prod.fluidtopics.net/Y22C8IN4GAKL86w~BSsRHQ)**   
  O editor de sintaxe pode exibir informações de API sensíveis ao contexto.

