ServiceNow SDK
Use o kit de desenvolvimento de software (SDK) ServiceNow® para adicionar módulos JavaScript e bibliotecas de terceiros a aplicações localmente e carregar mudanças em uma instância do Now Platform.
ServiceNow Visão geral do SDK
Com o SDK ServiceNow, os desenvolvedores podem criar e modificar aplicações com escopo com módulos personalizados e bibliotecas de terceiros em Visual Studio Code e implantar essas aplicações em uma instância de não produção na versão Washington DC. Escrever aplicações ServiceNow fora de uma instância ServiceNow permite que você use práticas de desenvolvimento padrão do setor e ferramentas conhecidas e detecte erros no tempo de compilação, em vez de somente no tempo de execução.
As aplicações criadas ou convertidas com o SDK incluem arquivos de código de origem e os arquivos XML de metadados gerados a partir dos registros do banco de dados da aplicação. Um arquivo package.json define a estrutura da aplicação, que é semelhante à das aplicações Node.js ou aos pacotes do Node Package Manager (npm).
O SDK inclui uma interface de linha de comando (CLI) para gerenciar mudanças entre uma instância e uma aplicação local. Usando comandos simples da CLI, você pode criar, converter, criar, implantar e buscar aplicações.
ServiceNow Fluxo de trabalho do SDK
O infográfico a seguir mostra o fluxo de trabalho para os desenvolvedores começarem a desenvolver aplicações que usam módulos JavaScript e bibliotecas de terceiros com o ServiceNow SDK.
- Um desenvolvedor com a função de administrador instala o SDK.
- Usando a CLI, o desenvolvedor se autentica em uma instância de não produção para fazer a interface entre o ambiente local e a instância com o comando
now-sdk auth. - O desenvolvedor cria uma aplicação com escopo (
now-sdk create) ou converte uma aplicação com escopo existente da instância (now-sdk convert) para uso com o SDK. - Em Visual Studio Code, o desenvolvedor grava módulos JavaScript personalizados e adiciona bibliotecas de terceiros.
- O desenvolvedor cria a aplicação, que compila o código de origem e o transforma em metadados de banco de dados para a instância e gera um pacote implantável (
now-sdk build). - O desenvolvedor implanta a aplicação na instância (
now-sdk implant). - Outros usuários podem continuar a modificar os metadados da aplicação na instância e os desenvolvedores podem reutilizar o código de módulos em outros módulos ou scripts com o SDK.
- O desenvolvedor busca a aplicação na instância para obter as atualizações mais recentes dos metadados da aplicação localmente (
now-sdk fetch).
ServiceNow Benefícios do SDK
| Benefício | Recurso | Usuários |
|---|---|---|
| Grave módulos JavaScript personalizados para organizar e reutilizar o código em aplicações com escopo. | Desenvolvedores | |
| Aproveite os utilitários JavaScript de terceiros existentes para evitar a reescrita da funcionalidade de código aberto existente. | ||
| Reduza o tempo de retorno das aplicações com maior produtividade, eficiência e otimização. | ||
| Use ferramentas de desenvolvimento conhecidas com recursos JavaScript padrão do setor, incluindo TypeScript, segurança de tipo, Intellisense e imposição de dependência. | Usando TypeScript com o SDK ServiceNow |
Estrutura da aplicação
As aplicações criadas com o SDK incluem os seguintes diretórios e arquivos:
- .metadata
Diretório que contém os arquivos XML de metadados da aplicação, como esquemas de tabela e regras de negócios, organizados na mesma estrutura de diretórios das aplicações ServiceNow existentes.
Este diretório contém um exemplo de regra de negócio (sys_script_<sysID> .xml ) por padrão e, se especificado, uma tabela de amostra (<scope>_to_do.xml).
Nota:Os metadados da aplicação devem ser editados na instância em vez de localmente.- .now
- Diretório que contém informações de cache e métrica para os processos de compilação e implantação.
- distr.
- Diretório que contém os artefatos de compilação para empacotamento.
- node_modules
- Diretório que contém os módulos Node.js de terceiros dos quais sua aplicação depende. Este diretório é adicionado quando os pacotes são instalados com npm.
- origem
- Diretório que contém o código do módulo (arquivos JavaScript ou TypeScript), incluindo um módulo de exemplo chamado myfunction.js.
- destino
- Diretório que contém um pacote implantável a ser carregado em uma instância.
- .eslintrc.json
- Arquivo que contém a configuração do ESLint. O ESLint ajuda a identificar e corrigir problemas no código da aplicação.
- pacote.json
Arquivo que contém informações sobre sua aplicação, a configuração ServiceNow e as dependências do módulo personalizado ou de terceiros. O arquivo package.json deve estar no diretório base de uma aplicação.
No arquivo package.json, a configuração da aplicação ServiceNow é definida no objeto
now."now": { "scope": "x_snc_example_app", "scopeId": "2f8400eb07426110f736e28f69d3017a", "moduleDir": "src" }Você pode configurar a estrutura de diretórios de uma aplicação no arquivo package.json com os seguintes parâmetros:- móduloDir
- Diretório que contém o código do módulo (arquivos JavaScript ou TypeScript). O valor padrão é src.
- metadadosDir
- Diretório que contém os metadados da aplicação como arquivos XML. O valor padrão é .metadata.
- compilaOutputDir
- Diretório para gerar os artefatos de compilação para empacotamento ao criar a aplicação. O valor padrão é dist/app.
- cpackOutputDir
- Diretório para gerar o arquivo zip a ser carregado em uma instância ao criar a aplicação. O valor padrão é destino.