Criar um filtro em cascata

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 5 min. de leitura
  • Os filtros em cascata permitem filtrar com base em vários valores em uma hierarquia, como por região, país e cidade. As opções de nível inferior são filtradas pelos valores selecionados em níveis superiores.

    Antes de Iniciar

    Você pode criar um filtro em cascata que permite aos usuários selecionar em uma lista de gerentes e, em seguida, selecionar grupos que se reportam a esse gerente. Os dados do relatório são filtrados para mostrar somente os registros atribuídos a esse grupo. Como alternativa, você pode deixar níveis inferiores do filtro desmarcados, como selecionando apenas um gerente, mas nenhum grupo. Os dados do relatório são filtrados para mostrar registros atribuídos a qualquer grupo gerenciado por esse gerente. Os filtros em cascata retêm os últimos elementos selecionados em um painel.

    Certifique-se de que a estrutura dos dados que você usa para criar o filtro seja consistente. Por exemplo, em um filtro em cascata com base no local, certifique-se de que as opções de nível superior sejam todas as regiões e as opções de segundo nível sejam todos os países. Você pode definir condições de filtro para garantir que somente as opções apropriadas para cada nível estejam disponíveis.

    Função necessária: hp_publisher_admin e report_admin. A função hp_publisher_admin existe somente para gerenciar filtros interativos. Por padrão, ele não contém outras funções e não está contido em nenhuma outra função.

    Por Que e Quando Desempenhar Esta Tarefa

    Este procedimento inclui exemplos baseados em um filtro interativo em cascata usando gerentes e grupos. Neste exemplo, a opção de nível superior permite que os usuários selecionem um gerente e a opção de segundo nível permite que os usuários selecionem um grupo de usuários gerenciado por esse gerente.
    Figura 1. Exemplo de filtro em cascata
    Exemplo de filtro em cascata
    Nota:
    Você pode filtrar relatórios com base nos valores somente nos campos de referência. Os filtros em cascata são compatíveis somente com o tipo de controle de IUde seleção única.

    Procedimento

    1. Navegar até Todos > Relatórios > Administração > Filtros interativos.
    2. Clique em Nova.
    3. Na lista Filtro baseado em, selecione Filtros em cascata.
    4. Clique com o botão direito no cabeçalho do formulário e selecione Salvar.
    5. Defina o primeiro nível do filtro em cascata.
      1. Na lista relacionada Filtro em cascata, clique em Novo.
      2. Selecione a Tabela e o campo Exibir na tabela que contém os valores que você deseja usar como opções de filtro de nível superior. O Campo de exibição está limitado aos tipos booliano, opção, referência e cadeia de caracteres.
        Para definir o nível superior de uma hierarquia com base nos gerentes e nos grupos que eles gerenciam, selecione Grupo [sys_user_group] como a Tabela e Gerente como o campo de Exibição.
      3. Opcional: Use o campo Filtros para limitar quais opções estão disponíveis para os usuários.
        As condições de filtro são especialmente úteis quando você cria um filtro em cascata com base em uma tabela de autorreferência, como Local [cmn_location]. Filtre os dados para garantir que cada nível do filtro em cascata tenha somente opções apropriadas para esse nível.
      4. Clique com o botão direito no cabeçalho do formulário e selecione Salvar.
    6. Defina o próximo nível da hierarquia.
      Os filtros em cascata usam um relacionamento de um para muitos entre filtros de nível superior e filtros de nível inferior. Um filtro de nível superior pode afetar as opções disponíveis em qualquer número de filtros de nível inferior.
      1. No filtro de gerente, na lista relacionada Filtro em cascata, clique em Novo.
      2. Selecione a Tabela e o campo Exibir na tabela que contém os valores que você deseja usar como opções de filtro de segundo nível. O Campo de exibição está limitado aos tipos booliano, opção, referência e cadeia de caracteres.
        No exemplo de gerentes e grupos, selecione Grupo [sys_user_group] como a Tabela e Nome como o campo de Exibição.
      3. No campo Campo de referência primário, selecione o campo que contém o valor selecionado no filtro de nível superior.
        Por exemplo, quando você cria o filtro Grupo, o valor do Campo de referência primário é Gerente. Neste exemplo, o gerente selecionado no primeiro filtro é usado para filtrar a lista de grupos disponíveis com base no valor do campo Gerente de cada grupo.
      4. Clique com o botão direito no cabeçalho do formulário e selecione Salvar.
      5. Repita essas subetapas para cada filtro adicional que você deseja adicionar.
        Para adicionar outro nível à hierarquia de filtros, adicione um novo registro na lista relacionada Filtro em cascata do filtro de nível mais baixo. Por exemplo, adicione o filtro Grupo em vez de um filtro de nível superior, como o filtro Gerente.
    7. Defina como cada nível de filtro aplica o filtro aos relatórios em um painel.
      1. Na lista relacionada Tabelas de destino, clique em Novo.
      2. Selecione a tabela de destino que contém os dados que você deseja filtrar, como Incidente.
      3. Selecione o Campo para filtrar.
        O campo deve fazer referência à tabela especificada no filtro. Por exemplo, ao filtrar dados de incidentes, o Campo do filtro do gerente de nível superior é Grupo de atribuição.Gerente. Neste exemplo, o campo do filtro de grupo de segundo nível é Grupo de atribuição.
      4. Clique em Enviar.
      5. Repita essas subetapas para adicionar metas para cada nível do filtro.
        Você pode definir várias metas para cada nível de filtro. Por exemplo, filtre dados de incidentes por grupo de atribuição ou ICs do CMDB por grupo de suporte usando o mesmo filtro de Grupos [sys_user_group].
        Nota:
        Uma hierarquia de filtro em cascata deve especificar pelo menos um destino. Você pode definir um filtro em cascata que ignora níveis em uma hierarquia ou um filtro em cascata que especifica somente metas para determinados níveis em uma hierarquia. Por exemplo, defina um destino somente para o filtro no nível de grupo e não para o filtro no nível de gerente. Neste exemplo, os relatórios são filtrados somente quando um usuário seleciona um grupo específico e não apenas um gerente.
      As imagens a seguir demonstram a configuração concluída do exemplo de filtro em cascata. A lista relacionada Filtro em cascata (não mostrada) no filtro de nível superior contém o filtro de segundo nível.
      Filtro de nível superior Filtro de segundo nível
      Exemplo de filtro de nível superior de filtro em cascata Exemplo de filtro de segundo nível de filtro em cascata

    O que Fazer Depois

    1. Depois de criar todos os níveis do filtro, adicione-o a um painel.
    2. No painel, selecione o ícone Editar widget (Ícone Editar colunas) em cada visualização no painel que deve seguir o filtro e selecione Seguir filtro interativo.

    Desduplicação de filtros em cascata

    Para que você não precise limpar o painel de filtros, os filtros duplicados são removidos automaticamente.

    Filtros duplicados são removidos de acordo com os seguintes critérios:
    • Se a configuração for a mesma, o último filtro editado será retido.
    • Se a configuração for igual, exceto por alguns filtros só terem uma meta e outros terem várias metas, somente o último filtro atualizado será mantido.
    • Se a configuração for igual, mas alguns filtros tiverem várias colunas de destino na mesma tabela de destino, todos os filtros serão considerados filtros separados e mantidos. Um exemplo de várias colunas de destino na mesma tabela de destino são as colunas Data de abertura e Data escalada na tabela de incidentes.
    • Se a configuração e o controle de IU forem iguais, mas a condição base for diferente para dois filtros, eles serão considerados filtros separados e mantidos.