Manipulador de navegação

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 1 min. de leitura
  • Um manipulador de navegação é uma regra de exibição com script e é executado sempre que os dados da tabela especificada são solicitados na exibição de formulário.

    Crie um manipulador de navegação

    A tabela Manipulador de navegação [sys_navigator] contém os manipuladores de navegação em sua instância. Acesse esta tabela inserindo sys_navigator.list no navegador de filtros. Os registros do manipulador de navegação contêm um Tabela campo para especificar a tabela à qual o manipulador de navegação se aplica, e um Script campo que contém a regra de exibição com script.

    O script a seguir vem do manipulador de navegação incluído com o plug-in de RH. O script força registros da tabela no Tabela Campo para usar a exibição ESS para usuários sem funções e a exibição padrão para todos os outros usuários.

    var now_GR = new GlideRecord(hr.TABLE_CASE);  
    if (gr.get(g_uri.get('sys_id'))) {  
         if (!gs.getUser().hasRoles())   
              g_uri.set('sysparm_view', 'ess');  
         else  
              g_uri.set('sysparm_view', '');  
    }  
      
      
    answer =  g_uri.toString('hr_case.do'); 

    Execute manipuladores de navegação antes ou depois das regras de exibição

    Use glide.ui.view_rule.check_after_nav_handlerpropriedade do sistema para controlar a ordem na qual as regras de exibição e os manipuladores de navegação são aplicados. Defina o valor da propriedade como Verdadeiro para processar regras de exibição após manipuladores de navegação. Se a propriedade do sistema não existir em sua instância, o manipulador de navegação sempre terá precedência.

    A propriedade do sistema substituirá o manipulador de navegação somente se a função de script do manipulador de navegação não retornar uma resposta. No script de exemplo acima, a propriedade não tem efeito. Isso ocorre porque este manipulador de navegação sempre retorna uma resposta devido a. resposta linha fora de se declaração.

    Para forçar o script do manipulador de navegação no exemplo anterior a respeitar as regras de exibição, siga as seguintes etapas:
    1. Crie o. glide.ui.view_rule.check_after_nav_handlerpropriedade do sistema.
    2. Defina o valor da propriedade como verdadeiro.
    3. Atualize o script do manipulador de navegação para retornar somente um resposta quando a exibição deve ser alterada ou forçada.

    Este exemplo é uma versão modificada do script anterior. Nesse caso, o resposta a linha só ocorre quando o usuário não tem funções. Se o usuário tiver funções, resposta nunca é atingido e as regras de exibição na mesma tabela, se houver, são aplicadas.

    var now_GR = new GlideRecord(hr.TABLE_CASE);  
    if (gr.get(g_url.get('sys_id'))) {  
         if (!gs.getUser().hasRoles()) {  
              g_url.set('sysparm_view'),'ess');  
              answer = g_url.toString('hr_case.do');  
         }  
    }