Usando pontos de extensão para estender a funcionalidade da aplicação
Use pontos de extensão para estender a funcionalidade de uma aplicação sem alterar o código da aplicação original. Você pode usar pontos de extensão preexistentes disponíveis em aplicações Now Platform selecionadas ou pode adicionar pontos de extensão ao desenvolver aplicações personalizadas em sua própria instância.
Usando pontos de extensão
Ao usar pontos de extensão, você pode integrar personalizações sem realmente alterar os componentes principais no código da aplicação. Os pontos de extensão podem impedir que suas interações de código personalizado sejam interrompidas, o que geralmente ocorre após um upgrade se você incorporar diretamente o código personalizado no código da aplicação.
Os pontos de extensão incorporados ao código da aplicação atuam como pontos de saída, por onde os dados passam para o código personalizado, e como pontos de entrada que manipulam os resultados retornados. Ao criar uma aplicação, os dados ou objetos retornados devem estar em conformidade com os requisitos definidos para o ponto de extensão.
Tipos de pontos de extensão
- Pontos de extensão com script
- Pontos de extensão em inclusões de script do lado do servidor que armazenam funções JavaScript e classes de objeto. Para saber mais sobre inclusões de script e como implementar pontos de extensão com script na aplicação e no código personalizado, consulte:
- Pontos de extensão de IU
- Pontos de extensão que são usados em macros de IU do lado do servidor, como extensões HTML.
Macros de IU são componentes de script discretos que você pode adicionar à interface do usuário. Você os usa para adicionar conteúdo personalizado a uma página de IU, sem precisar modificar diretamente a página. Por exemplo, você pode usar macros de IU para adicionar cabeçalhos e rodapés à página de IU padrão Base de conhecimento Exibir (kb_view) na qual os artigos da base de conhecimento aparecem.
Para saber mais sobre macros de IU e como implementar pontos de extensão de IU na aplicação e no código personalizado, consulte: - Pontos de extensão do cliente
- Pontos de extensão que são usados em scripts de IU do lado do cliente, normalmente para modificar formulários.
Os scripts de IU permitem que você empacote o JavaScript do lado do cliente em um formulário reutilizável, que é semelhante ao modo como as inclusões de script armazenam o JavaScript do lado do servidor. Você pode criar scripts de IU e executá-los a partir de client scripts, de outros objetos de script do lado do cliente e do código HTML.
Para saber mais sobre scripts de IU e como implementar pontos de extensão do cliente na aplicação e no código personalizado, consulte:
Ao usar pontos de extensão para processar personalizações, você cria uma estrutura definida para integrar dados personalizados ou funcionalidade em um aplicativo. As inclusões de script personalizadas do lado do servidor, as macros de IU, como extensões HTML, e os scripts de IU do lado do cliente são externas ao código da aplicação e só interagem com ele em pontos de extensão especificados.
Código da aplicação
- Código da aplicação padrão
- Padrão ou base, código da aplicação que compreende o Now Platform.Pontos de extensão predefinidos já estão incorporados em determinadas aplicações, como Customer Service Management e Gestão de serviços de campo. Para saber mais sobre as aplicações Now Platform que contêm pontos de extensão predefinidos, consulte o seguinte:
Aplicação Tópico de ponto de extensão Coaching Solução de problemas de Coaching Gestão de melhoria contínua Melhoria com outras aplicações Customer Service Management Pontos de extensão no Customer Service Management Criação de funções de usuário personalizadas Integração de CSM com Change Management Integração de CSM com Incident Management Integração de CSM com Problem Management Integração de CSM com Request Management Gestão de serviços de campo Pontos de extensão na Gestão de serviços de campo Gestão de conhecimento Uso de pontos de extensão para a Gestão de conhecimento Orquestração Rede de extensão da Distribuição de software cliente Instalada com a Distribuição de software cliente Redefinição de senha Inclusões de script do Password Reset - Aplicações personalizadas desenvolvidas internamente para sua empresa
- Você pode adicionar pontos de extensão para lidar com o registro de artefatos personalizados que são usados para modificar ou estender a funcionalidade de uma aplicação. Quando os desenvolvedores criam código personalizado, eles registram ou emparelham artefatos personalizados específicos com pontos de extensão específicos. Adicionar pontos de extensão permite a integração de personalizações futuras sem precisar alterar o código base.
Criação de um ponto de extensão no código da aplicação
Você deseja garantir que as aplicações desenvolvidas internamente que você cria para sua empresa possam ser personalizadas, combinadas e atualizadas corretamente conforme necessário. Os pontos de extensão permitem modificar a funcionalidade e a interface do usuário de uma aplicação sem editar seus componentes principais. O uso de pontos de extensão também cria uma estrutura altamente definida para extensões de funcionalidade.
- Identifique onde colocar os pontos de extensão no código da aplicação para acomodar inclusões de script personalizadas, macros de IU ou scripts de IU.
- Determinar o conteúdo e a estrutura de um ponto de extensão. Esta definição deve descrever como uma personalização deve ser estruturada, como ela interage com o código da aplicação e como os dados retornados por uma personalização no ponto de extensão são processados.
- Crie um ponto de extensão e defina sua interface personalizada. Este é um exemplo de um ponto de extensão com script.
- Designe locais específicos no código da aplicação para onde os dados ou objetos podem ser enviados para uma personalização e para onde os dados são retornados.
- Crie um artefato, como uma inclusão de script, macro de IU ou script de IU, que chama o método GlideScriptedExtensionPoint - com escopo. Este método identifica o ponto de extensão no qual os artefatos personalizados registrados são executados no código da aplicação.
Habilitar depuração e registro em log
Ao criar um ponto de extensão, você também deve habilitar a depuração e o registro em log. A depuração e o registro em log ajudam a identificar e corrigir problemas relacionados ao uso de artefatos personalizados com um ponto de extensão. Ao habilitar o depurador, você pode definir pontos de interrupção em inclusões de script, macros de IU ou scripts de IU. Você pode verificar os logs para ver os seguintes detalhes:
- Quando um ponto de extensão encontra instâncias de extensão ativas, incluindo o número total de instâncias de extensão encontradas e a hora em que cada instância de extensão foi encontrada.
- Quando um ponto de extensão executa instâncias de extensão, incluindo o número total de artefatos personalizados executados e a hora de cada um executado. Também inclui o número total de que falharam ao executar e a hora em que cada instância de extensão falhou.
Registro de um artefato personalizado em relação a um ponto de extensão
Ao personalizar uma aplicação, você estende a funcionalidade básica usando artefatos personalizados, como inclusões de script do lado do servidor, macros de IU ou scripts de IU do lado do cliente. Para projetar e criar artefatos personalizados, execute as seguintes tarefas:
- Revise a lista de pontos de extensão disponíveis que são apropriados para o tipo específico de artefato personalizado que você está criando.
- Essas listagens incluem pontos de extensão que você criou e todos os pontos de extensão predefinidos que estão incorporados nas funções Now Platform.
- Cada listagem inclui informações sobre um ponto de extensão no código da aplicação que chama um artefato personalizado e quais dados ou objetos devem ser retornados a ele.
- Selecione um ponto de extensão.
- Determine como estruturar o artefato personalizado. A estrutura deve ser baseada nas descrições do ponto de extensão. As descrições incluem os requisitos para usar o artefato com o código personalizado e onde o artefato estará localizado no código da aplicação base.
- Crie o artefato e o código personalizados ao registrá-los em relação ao ponto de extensão selecionado. Por meio do registro, você cria um registro de instância de extensão que vincula a definição do ponto de extensão à sua implementação no artefato personalizado.
Como os artefatos personalizados registrados são processados
- Usa o ponto de extensão na chamada de API para determinar quais artefatos personalizados estão registrados em relação a ele.
- Envia os dados ou objetos apropriados para os artefatos personalizados registrados.
- Coleta a saída retornada de cada artefato personalizado.
- Processa e incorpora os resultados retornados na aplicação de base.