Eventos em formulários e grades em aplicativos controlados por modelos

Eventos em formulários e grades iniciam todo o código do lado do cliente em aplicativos controlados por modelos. Você associa uma função específica em uma biblioteca JavaScript (recurso Web script) a ser executada quando um evento ocorre. Essa função é chamada de manipulador de eventos. Cada manipulador de eventos especifica uma única função dentro de uma biblioteca JavaScript e todos os parâmetros que podem ser passados para a função.

Você pode associar manipuladores de eventos a apenas alguns eventos usando a interface do usuário. Para eventos que você não pode associar por meio da interface do usuário, a API do Cliente fornece métodos que você pode usar para anexar manipuladores de eventos.

Adicionar ou remover funções do manipulador de eventos em formulários usando a interface do usuário

Para adicionar ou remover funções de manipulador de eventos para eventos na nova Interface Unificada:

  1. Vá para Power Apps.

  2. No painel de navegação esquerdo, selecione Dados e, em seguida, selecione Tabelas.

  3. Na lista de tabelas, selecione a tabela na qual você deseja adicionar os manipuladores de eventos.

  4. Selecione a guia Formulários na barra de comandos e selecione o formulário no qual deseja adicionar o manipulador de eventos.

    Captura de tela da guia Formulários mostrando a lista de formulários de uma tabela em Power Apps.

  5. Selecione a guia Eventos . Você verá os manipuladores de eventos On Save e On Load .

    Captura de tela da guia Eventos mostrando os manipuladores de eventos de formulário Ao Salvar e Carregar.

  6. Para adicionar um manipulador de eventos para o evento de alteração, selecione a coluna e, em seguida, selecione a guia Evento .

    Captura de tela da guia Eventos da coluna mostrando as configurações do manipulador de eventos On Change.

Editar formulários em massa

Por padrão, os manipuladores de eventos não são executados quando um formulário está no modo de edição em massa.

Para habilitar um manipulador de eventos no modo de edição em massa, modifique o Formulário XML localizando o elemento relevante event e criando ou definindo o BehaviorInBulkEditForm atributo como Enabled. Atualmente, esse comportamento tem suporte apenas para eventos OnLoad.

Para obter mais informações sobre a personalização do Formulário XML, consulte Quando editar o arquivo de personalizações, personalizar formulários e o esquema XML do Formulário.

Para determinar quando um manipulador de eventos é executado em um formulário no modo de edição em massa, use o getFormType método.

Adicionar ou remover funções de manipulador de eventos usando o código da API do Cliente

Use os seguintes métodos para adicionar e remover manipuladores de eventos para eventos que você não pode associar por meio da interface do usuário:

Eventos Manipulador de eventos
Atributo OnChange Métodos addOnChange e removeOnChange
Formulário OnLoad métodos formContext.ui addOnLoad e removeOnLoad
Formulário carregado métodos formContext.ui addLoaded e removeLoaded
OnLoad de dados de formulário métodos formContext.data addOnLoad e removeOnLoad
OnSave de Formulário Métodos addOnSave e removeOnSave
Pré-pesquisa do controle PreSearch Métodos addPreSearch e removePreSearch
kbsearch control OnResultOpened Métodos addOnResultOpened e removeOnResultOpened
kbsearch control OnSelection Métodos addOnSelection e removeOnSelection
kbsearch control PostSearch Métodos addOnPostSearch e removeOnPostSearch

Importante

O contexto de execução é passado automaticamente como o primeiro parâmetro para funções que você define usando o código. Para obter mais informações, consulte o contexto de execução da API do Cliente.

Pipeline de eventos de formulário

Você pode definir até 50 manipuladores de eventos para cada evento. A seção Manipuladores de Eventos na guia Eventos da caixa de diálogo Propriedades do Formulário mostra a ordem dos manipuladores de eventos e cada manipulador de eventos é executado nessa ordem.

Use os métodos setSharedVariable e getSharedVariable para passar uma variável comum entre manipuladores de eventos (funções). Use o método getDepth de contexto de execução para entender a sequência de execução do manipulador de eventos em relação a outros manipuladores de eventos.

Entender o modelo de objeto da API do cliente
Contexto de execução da API do cliente
Eventos (referência à API do cliente)