Como criar aplicações no código de origem
Crie e desenvolva aplicações personalizadas no código de origem usando ferramentas e processos de desenvolvimento conhecidos.
Visão geral da criação no código de origem
Você pode criar aplicações com escopo no código usando o ServiceNow IDE no Now Platform ou localmente no Visual Studio Code Desktop com o ServiceNow SDK.
Em qualquer ambiente de desenvolvimento, você usa ServiceNow Fluent, uma linguagem de programação específica de domínio, para definir os metadados que compõem as aplicações. ServiceNow Fluent inclui APIs para definir os diferentes tipos de metadados.
Com ServiceNow IDE ou ServiceNow SDK, você também pode criar módulos JavaScript e usar bibliotecas de terceiros em sua aplicação para otimizar a reutilização de código em scripts em uma aplicação com escopo.
O desenvolvimento e a manutenção de aplicações no código-fonte permitem que você trabalhe em ambientes de desenvolvimento familiares, crie e modifique aplicações complexas, gerencie o código no controle de código-fonte com mais facilidade e detecte erros no momento da compilação.
|
ServiceNow IDE |
ServiceNow SDK |
Comparação entre ServiceNow IDE e ServiceNow SDK
| Funcionalidade | ServiceNow IDE | ServiceNow SDK |
|---|---|---|
| Ambiente de desenvolvimento | On-line ServiceNow instância | Desenvolvimento local e capacidade de trabalhar off-line |
| Interface do usuário | IDE baseado em Visual Studio Code para a web | Visual Studio Code Desktop |
| Colaboração | Exiba as mudanças de qualquer usuário em tempo real em interfaces de usuário de código ou incorporadas Now Platform. Colabore com outros desenvolvedores em aplicações no controle de código-fonte. |
Busque e implante mudanças em uma instância usando a CLI ServiceNow SDK para colaborar com outros usuários. Colabore com outros desenvolvedores em aplicações no controle de código-fonte. |
| Controle de código-fonte | Oferece suporte à funcionalidade Git mais comum e à integração com um provedor Git de sua escolha. Uma ramificação simultânea por repositório por instância. |
Suporte completo |
| Conversão da aplicação | Suporte para conversão de aplicações com escopo existentes não criadas com ServiceNow IDE ou ServiceNow SDK. | Suporte para conversão de aplicações com escopo existentes não criadas com ServiceNow IDE ou ServiceNow SDK. |
| ServiceNow Fluent | Suporte completo | Suporte completo |
| Módulos JavaScript e bibliotecas de terceiros | Suporte total | Suporte completo |
Estrutura da aplicação
As aplicações com escopo personalizado criadas com ServiceNow IDE ou ServiceNow SDK incluem arquivos de código de origem e arquivos XML de metadados. Os arquivos package.json e now.config.json definem a estrutura da aplicação, que é semelhante à das aplicações Node.js ou aos pacotes do Node Package Manager (npm).
Por padrão, as aplicações incluem os seguintes diretórios e arquivos. Você pode modificar determinados aspectos da estrutura da aplicação para atender às suas necessidades no arquivo now.config.json.
- .now
- Diretório que contém informações de cache e métricas para os processos de criação e implantação.
- dist/app
- Diretório que contém os artefatos de compilação para empacotamento.
- metadados
-
Diretório que contém os metadados da aplicação (XML), como esquemas de tabela e regras de negócio, organizados na mesma estrutura de diretórios das aplicações ServiceNow existentes.
Nota:Os metadados da aplicação não devem ser editados a partir dos arquivos XML. Edite os metadados da aplicação no código de origem ou no Now Platform. - node_modules
- Diretório que contém os módulos Node.js de terceiros dos quais sua aplicação depende.
- src
- Diretório que contém o código-fonte da sua aplicação, incluindo arquivos de exemplo. Este diretório inclui os seguintes subdiretórios:
- fluent: diretório que contém o código ServiceNow Fluent em arquivos .now.ts. O subdiretório gerado contém os arquivos de aplicações convertidos para ServiceNow Fluent.
- server: diretório que contém o código do módulo JavaScript em arquivos .js ou .ts.
- target
- 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.
- .gitignorar
- Arquivo que contém uma lista de diretórios ou arquivos para o Git ignorar. Esses arquivos não são rastreados no controle de código-fonte.
- now.config.json
- Arquivo que contém a configuração da aplicação ServiceNow. O arquivo now.config.json deve estar no diretório base de uma aplicação. Você pode configurar a estrutura de diretórios de uma aplicação adicionando os parâmetros a seguir. Por exemplo:
{ "scope": "x_snc_example_app", "scopeId": "2f8400eb07426110f736e28f69d3017a", "name": "ExampleApp" "metadataDir": "metadata", "appOutputDir": "dist/app", "fluentDir": "src/fluent", "serverModulesDir": "src/server", "modulePaths": { "src/server/*.ts": "dist/server/*.js", }, "ignoreTransformTableList": ["ua_table_licensing_config", "sys_embedded_help_role"] }Tabela 1. Parâmetros now.config.json compatíveis Parâmetro Descrição metadataDir Diretório que contém os metadados da aplicação como arquivos XML. Padrão: metadados
appOutputDir Diretório para a saída dos artefatos de compilação para empacotamento ao criar a aplicação. Padrão: dist/app
fluentDir Diretório que contém ServiceNow arquivos Fluent (.now.ts) que definem os metadados da aplicação no código de origem. Padrão: src/fluent
serverMódulosDir Diretório que contém os arquivos JavaScript ou TypeScript a serem incorporados aos módulos JavaScript para uso em scripts do lado do servidor. Padrão: src/server
modulePaths Um mapeamento do diretório de origem para módulos para o diretório de saída para módulos. Este parâmetro é usado para compilar arquivos de origem TypeScript em módulos JavaScript. Para obter mais informações, consulte Uso de TypeScript em módulos JavaScript com o ServiceNow SDK. Este parâmetro não é necessário se você usar o parâmetro
tsconfigPath.tsconfigPath Um caminho para o arquivo tsconfig.json da aplicação se ele não estiver no diretório base. Por exemplo, './src/tsconfig.json'.Este parâmetro não é necessário se você usar o parâmetro
modulePaths.ignoreTransformTableList Tabelas a serem ignoradas ao transformar metadados da aplicação em código de origem. - pacote-bloqueio.json
- Arquivo atualizado automaticamente que contém informações completas sobre dependências e suas versões. Este arquivo só está disponível com o ServiceNow SDK.
- pacote.json
-
Arquivo que contém informações sobre sua aplicação e dependências de módulos personalizados ou de terceiros. O arquivo package.json deve estar no diretório base de uma aplicação. Em uma instância, o caminho package.json é especificado no campo Package JSON do registro da aplicação personalizada [sys_app] no formato<scope> /<package-name> /<version> /package.json .
- tsconfig.json
-
Arquivo que contém a configuração do TypeScript e as opções para compilar arquivos do TypeScript em módulos JavaScript e para definições de tipo.
Aplicações e recursos relacionados
- APIs JavaScript
- Use as APIs JavaScript em scripts que você grava para mudar a funcionalidade de aplicações ou ao criar aplicações.