Configure um manipulador de eventos para um componente de filtro

  • Versão de lançamento: Australia
  • Atualizado 12 de mar. de 2026
  • 2 min. de leitura
  • Em um painel técnico, configure um manipulador de eventos baseado em script de cliente especial para um componente de filtro para que ele possa ser seguido por listas ou visualizações de dados. Não é necessário configurar um manipulador de eventos para filtros em painéis em linha.

    Antes de Iniciar

    Este procedimento pressupõe que as seguintes tarefas estejam concluídas:
    1. Você adicionou o componente Filtro ao Construtor de IU E pelo menos um componente de Visualização de dados ou Lista. O Filtro pode ser aplicado a várias visualizações de dados ou listas.
    2. Você configurou o filtro como origem e os dados a serem filtrados, se aplicável, para o componente Filtro. Se o componente Filtro deve filtrar uma Lista, você especificou a tabela que o componente Lista mostra como dados para filtrar.
    3. Você configurou fontes de dados para todos os componentes de Visualização de dados.
    4. Você especificou uma tabela para todos os componentes da lista.

    Função necessária: iu_builder_admin, admin

    Procedimento

    1. Abra o relevante Construtor de IU página.
      Esta página pode ser um painel técnico.
    2. Navegue até Construtor de IU E adicione uma variável de estado chamada ParFilters Do tipo JSON com um valor inicial de matriz simples [] .
    3. Adicione uma segunda variável de estado JSON chamada Quériascodificadas Do tipo Objeto com valor inicial . .
    4. Navegue até a seção Client Scripts e crie um script personalizado com um nome como "Aplicar filtros PAR" e o seguinte conteúdo ou um equivalente funcional:
      function handler({ api, event, helpers, imports }) {
      	const mergePARFiltersV2 = imports["global.mergePARFilters"]().v2;
      	const { appliedFilters } = event.payload;
      	api.setState("parFilters", ({ currentValue, api }) => {
      		const { parFilters, encodedQueries } = mergePARFiltersV2(
      			currentValue,
      			appliedFilters
      		);
      		api.setState("encodedQueries", encodedQueries);
      		return parFilters;
      	});
      }
    5. Na seção Scripts de cliente, abra o. Inclusões de script de cliente .

      A guia inclusões de script de cliente do painel Scripts de cliente em uma página de UIB.
    6. Em Adicione uma inclusão de script campo, selecione MergePARFilters e clique em Adicionar .

      Inclusão do script mergePARFilters.
    7. Feche a janela para configurar dados, estado do cliente e scripts do cliente.
    8. Em Construtor de IU, Selecione o componente Filtro.
    9. Selecione Eventos No painel de configuração e adicione o script de página que você criou, que em nosso exemplo é Aplicar filtros PAR, como um manipulador de eventos.

      Adicionando o script Aplicar filtros PAR como manipulador de eventos Filtro aplicado.
    10. Em Construtor de IU, Selecione um componente da Lista de registros, se houver.
    11. Abra o subcomponente Lista de apresentação da Lista de registros no painel de configuração.
    12. Na seção Dados, selecione Editar filtro fixo E defina esta propriedade [fixedQuery] como a expressão de vinculação dinâmica .encodedQueries.encodedQueries.<list-datasource> .
      Substitua <list-datasource> pela fonte de dados do componente Lista. Por exemplo, se a sua Lista mostrar registros da tabela Incidente [incidente], insira A state.encodedQueries.incident .
      No campo Filtro fixo em um painel de configuração de lista, vincule a propriedade fixedQuery ao parâmetro de estado do cliente encodedQueries.
    13. Repita as duas etapas anteriores para todos os outros componentes da Lista.
    14. Salve a página.