Substitua um script de formulário Catálogo de serviços por um widget

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 1 min. de leitura
  • Você pode usar widgets em Portal de serviços para substituir Macros de IU. Se o seu formulário Catálogo de serviços incluir uma Macro de IU que faz referência a outros campos ou variáveis no formulário, você pode criar um widget para manter o código reutilizável e incorporá-lo ao formulário Catálogo de serviços. Use a sintaxe especial para acessar todos os campos de variáveis no formulário.

    Antes de Iniciar

    Função necessária: administrador ou sp_admin

    Procedimento

    1. Crie um widget que execute a ação que você deseja usar em formulários de item do catálogo.
      Consulte a etapa 7 para obter um widget de exemplo simples que acessa outra variável no formulário.
    2. Abra um item do catálogo que usou anteriormente uma Macro de IU ou outro componente reutilizável sem suporte em Portal de serviços.
    3. Em listas relacionadas, adicione uma nova variável ao item do catálogo.
    4. Configure o formulário de variável para adicionar o campo Widget.
    5. No campo Tipo, selecione Macro.
    6. No campo Widget, selecione um widget que execute a ação desejada.
    7. Opcional: Use a sintaxe $scope.page.g_form() ou $scope.page.field no widget incorporado para acessar os valores de item do catálogo.
      Este exemplo mostra como modificar o valor de uma variável de texto de linha única com a cor do nome associada ao item do catálogo.
      Modelo HTML de widget
      <div>  
        Data from catalog variable:  
        <h1>{{ c.data.message }}</h1>  
      </div>
      Script do cliente do widget
      function($scope) {  
           var c = this;  
        
           //Watch for changes in the color variable  
           $scope.$watch(function () {  
                return $scope.page.g_form.getValue('color');  
           }, function (value) {  
           //Update local data object with data from variable  
           c.data.message = value ? 'Content of color variable: ' + value : '';  
      });  
      }  
      Você pode usar o seguinte para acessar campos de variável ou item do catálogo:
      • $scope.page.g_form(): a instância g_form no formulário. Você pode usar todos os métodos g_form compatíveis descritos em Portal de serviços e client scripts. Por exemplo, g_form.setValue('variable_name', 'new value');.
      • $scope.page.field(): o objeto que representa a variável.
      Quando você abre o item do catálogo no Portal de serviços, o widget incorporado acessa os campos de variáveis associados ao item do catálogo.

      A entrada para a variável é exibida no widget incorporado.