Criar um widget que exibe uma página de IU da ServiceNow

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • Você pode criar uma página de IU da ServiceNow que exiba uma página da web. Você pode adicionar essa página de IU a um widget que pode ser adicionado a painéis.

    Antes de Iniciar

    Função necessária: administrador

    Por Que e Quando Desempenhar Esta Tarefa

    Uma página de IU é uma ServiceNow página que não é uma lista ou um formulário. Nem toda página de IU caberá em um widget. Algumas páginas de IU, como widgets ou dispositivos de site externo, não são exibidas corretamente quando colocadas em um painel.

    Para saber como criar uma página de IU sem usar um modelo de página da estrutura, consulte Criação de uma página de IU sem usar o modelo de página da estrutura, publicação no blog de um desenvolvedor na Comunidade ServiceNow.

    Nota:
    Esta funcionalidade requer conhecimento de JavaScript.

    Procedimento

    1. Crie ou encontre uma página de IU da ServiceNow que você deseja exibir como um widget.
      Anote o nome desta página de IU para usar na Etapa 4. O nome da página de IU é o valor do campo de nome no formulário em que você define o conteúdo da página de IU.
    2. Navegar até IU do Sistema > Widgets e clique em Novo.
      Os registrosde widgets são registros de categoria de widget, não registros de widgets individuais. Ao adicionar um widget ao painel, selecione primeiro a categoria e, em seguida, o widget. O JavaScript especificado na etapa 4 inclui a lista de widgets a serem incluídos nessa categoria.
    3. Preencha os seguintes campos.
      CampoDescrição
      Nome O nome desta categoria de widget. Selecione esta categoria ao adicionar seus widgets a um painel.
      Tipo de renderizador Selecione JavaScript.
      Ativo Limpe este campo para tornar o widget indisponível para ser adicionado aos painéis.
      Funções Selecione quais funções podem ver esta categoria ao adicionar widgets a painéis. Se você não selecionar funções, todas as funções poderão ver a categoria.
    4. Adicione o seguinte JavaScript no campo Script, fazendo as substituições conforme especificado.
      A declaração de retorno contém os widgets listados nesta categoria de widget.
      Nota:
      O snippet de código nesta etapa funciona em aplicações sem escopo. Use o snippet de código na etapa 5 para aplicações com escopo.
      Tabela 1.
      widget_name O nome do widget que o usuário seleciona no seletor de widget ao adicionar o widget a um painel. Essa cadeia de caracteres também aparece no cabeçalho do widget. Este valor é o Nome que você configura na etapa 3.
      IU_page_name O nome da página de IU da etapa 1 a ser mostrada no widget.
      function sections() {
          return {
              'widget_name': { 'uiPageName' : 'UI_page_name'},
              'widget_name2': {'uiPageName': 'UI_page_name_2'}
          };
      }
      
      function render() {
          var uiPageName = renderer.getPreferences().get("uiPageName");
          return renderer.getRenderedPage(uiPageName);
      }
      
      function getEditLink() {
          var uiPageName = renderer.getPreference('uiPageName');
          return 'sys_ui_page.do?sysparm_query=' + encodeURIComponent('name=' + uiPageName);
      }
    5. Opcional: Use este exemplo de código para aplicações com escopo:
      function sections() {
          return {
          'Widget': {
          'type': 'widgetname'
          }
          };
      }
      
      function render() {
          var scope = gs.getCurrentScopeName();
          scope = (scope == "rhino.global" ? "" : scope + "_");
          var page = renderer.getPreference('type');
          return renderer.getRenderedPage(scope + page);
      }
      
      function getEditLink() {
          var scope = gs.getCurrentScopeName();
          scope = (scope == "rhino.global" ? "" : scope + "_");
          var page = renderer.getPreference('type');
          return "sys_ui_page.do?sysparm_query=name=" + scope + page;
      }
    6. Clique em Enviar.

    O que Fazer Depois

    Edite um painel dinâmico