Eventos de formulário (referência do cliente)

 

Publicado: novembro de 2016

Aplicável a: Dynamics CRM 2015

Qualquer código do cliente é iniciado por eventos. No Microsoft Dynamics 365, você associará uma função específica em uma biblioteca do JavaScript para ser executada quando eventos específicos ocorrerem.

Todos os eventos de formulário têm uma interface do usuário utilizada para especificar um ou mais manipuladores de evento. Cada manipulador de eventos especifica uma única função em uma biblioteca do JavaScript e todos os parâmetros que podem ser transmitidos para a função.

Eventos

Evento OnLoad

Evento OnSave

Evento OnChange de campo

Evento TabStateChange da guia

Evento IFRAME OnReadyStateComplete

Evento PreSearch de controle de pesquisa

Evento OnStageChange

Evento OnStageSelected

Eventos de controle de pesquisa da base de dados de conhecimento do Parature

Evento OnLoad de subgrade

Evento OnLoad

O evento OnLoad ocorre depois que o formulário for carregado. Não pode impedir o carregamento da janela. Use o evento OnLoad para aplicar a lógica sobre como o formulário deve ser exibido, para definir propriedades em campos e interagir com outros elementos da página.

Quando o cliente Microsoft Dynamics CRM para Tablets for desconectado, o evento OnLoad é o único evento que ocorrerá.

Observação

Formulários para Entidades atualizadas não recarregam a página depois de salvar inicialmente criando um registro ou qualquer salvamento subsequente. Portanto, o evento OnLoad ocorre apenas durante o carregamento inicial do formulário.

Evento OnSave

O evento OnSave ocorrer quando:

  • O usuário clica no botão Botão para salvar automaticamente no canto inferior direito do formulário, mesmo quando não há dados alterados para serem salvos.

  • O código executa o método Xrm.Page.data.entity.Salvar, mesmo quando não houver dados alterados para serem salvos.

  • O usuário sai do formulário e não há dados não salvos no formulário.

  • Com o salvamento automático habilitado, 30 segundos depois dos dados terem sido alterados e houver dados não salvos no formulário.

  • O código executa o método Xrm.Page.data.Salvar e há dados não salvos no formulário.

  • O código executa o método Xrm.Page.data.refresh transmitindo um valor true como o primeiro parâmetro e há dados não salvos no formulário.

Para determinar qual botão é clicado para executar o salvamento, use o método getSaveMode.

Você poderá cancelar o salvamento usando o método preventDefault no objeto de argumentos do evento. O método preventDefault é acessível usando o método 279ca720-e304-4e51-b99f-91722431c2c8#BKMK_GetEventArgs que faz parte do contexto de execução. É preciso configurar o manipulador de eventos do formulário para passar no contexto de execução. Para obter mais informações, consulte Usar o contexto de execução e o pipeline de evento de formulário.

Evento OnChange de campo

O evento OnChange normalmente acontece quando os dados em um campo de formulário tiver alterado e o foco será perdido.

Observação

Há uma exceção para esse comportamento que se aplica aos campos de duas opções (booleano) que são formatados para usar botões de opção ou caixas de seleção. Nesses casos, o evento ocorre imediatamente.

Esse evento também ocorre quando alterações de dados no servidor são recuperadas para atualizar um campo quando o formulário é atualizado, como depois que um registro é salvo.

Usando o atributo Xrm.Page.data.entity. O método fireOnChange também fará com que esse evento ocorra.

O evento OnChange não ocorrerá se o campo for alterado programaticamente usando o método setValue. Se desejar que os manipuladores de eventos do evento OnChange sejam executados depois que você definir o valor, você deverá usar o atributo Xrm.Page.data.entity. Método fireOnChange no seu código.

Todos os campos oferecem suporte ao evento OnChange. Os dados no campo são validados antes e depois do evento OnChange.

Observação

Embora o campo Status suporte o evento OnChange, o campo será somente leitura no formulário para que o evento não possa ocorrer com a interação com o usuário. Outro script pode fazer com que esse evento ocorra usando o método fireOnChange no campo.

Evento TabStateChange da guia

O evento TabStateChange ocorre quando DisplayState da guia é alterado devido a interação ou quando o método setDisplayState é aplicado no código. Use este evento quando quiser alterar a propriedade src de um IFRAME na guia.

Esse evento não ocorre porque no CRM para tablets, guias não expandem ou recolhem.

Observação

Se você definir o IFrame. propriedade src no evento OnLoad para um IFRAME em uma guia recolhida, o valor será substituído quando a guia for expandida.

Evento IFRAME OnReadyStateComplete

O evento OnReadyStateComplete indica que o conteúdo do IFRAME foi carregado e pode ser acessado no código. Use este evento ao consultar controles do IFRAME em seus scripts.

Esse evento não ocorre no CRM para tablets porque IFRAMES não têm suporte.

Evento PreSearch de controle de pesquisa

O controle de pesquisa tem um evento PreSearch que ocorre imediatamente antes do controle iniciar um diálogo para pesquisar registros. Não há interface do usuário para definir manipuladores de eventos para o evento. Você deve usar os métodos addPreSearch e removePreSearch no controle de pesquisa para adicionar ou remover manipuladores de eventos para o evento.

Use este evento com outro Métodos de controle de pesquisa e eventos para alterar os resultados exibidos em uma pesquisa baseada em dados do formulário atualmente imediatamente antes do controle de pesquisa mostrar os resultados de pesquisa para que o usuário escolher.

Evento OnStageChange

Esse evento ocorre quando o estágio de um controle de fluxo de processos empresariais alterar. Esse evento ocorre quando o usuário clica nos botões Próximo Estágio ou Mover para o estágio anterior na interface do usuário ou quando um desenvolvedor usa os métodos Xrm.Page.data.process.moveNext ou Xrm.Page.data.process.movePrevious. Não é possível cancelar a alteração de estágios usando código no manipulador para esse evento.

Um objeto de contexto de execução é passado para manipuladores de eventos para o evento. Você pode usar a função getEventArgs para recuperar um objeto com os seguintes métodos:

  • getDirection
    Retorna uma cadeia de caracteres que é “next" ou "previous" para mostrar a direção da alteração de estágios.

  • getStage
    Retorna um objeto do estágio. Exceto quando a navegação se move para uma nova entidade, o estágio retornado representa o objeto do estágio de destino, ou seja, o próximo estágio ativo. Quando a navegação se move para uma nova entidade, o estágio é o estágio que está sendo navegado, ou seja, o objeto de estágio ativo anterior.Para obter mais informações:Métodos do estágio.

Use o método Xrm.Page.data.process.addOnStageChange para adicionar manipuladores de eventos para o evento e o método Xrm.Page.data.process.removeOnStageChange para removê-los.Para obter mais informações:Criar scripts para fluxos de processos de negócios.

Evento OnStageSelected

Esse evento ocorre quando um estágio de um controle de fluxo de processos empresariais for selecionado. Não é possível cancelar a seleção de estágios usando código no manipulador para esse evento.

Um objeto de contexto de execução é passado para manipuladores de eventos para o evento. Você pode usar a função getEventArgs para recuperar um objeto com os seguintes métodos:

  • getStage
    Retorna um objeto de estágio que representa o estágio selecionado.Para obter mais informações:Métodos do estágio.

Use o método Xrm.Page.data.process.addOnStageSelected para adicionar manipuladores de eventos para o evento e o método Xrm.Page.data.process.removeOnStageSelected para removê-los.Para obter mais informações:Criar scripts para fluxos de processos de negócios.

Eventos de controle de pesquisa da base de dados de conhecimento do Parature

O Atualização 1 do Microsoft Dynamics CRM Online 2015 apresentou um novo controle de pesquisa da base de dados de conhecimento que pode somente ser adicionado aos formulários para organizações que estejam integradas ao Parature. Este controle tem dois eventos (OnResultOpened e OnSelection) aos quais os desenvolvedores podem atribuir, de forma programática, manipuladores de eventos.Para obter mais informações:Controle de pesquisa da base de dados de conhecimento do Parature (referência do cliente)

Evento OnLoad de subgrade

Com o CRM Online 2015 Atualização 1 você pode anexar manipuladores de eventos ao evento OnLoad de subgrades.Para obter mais informações:Escrever scripts para subgrades

Confira Também

Referência rápida do script de formulário
Criar códigos para os formulários do Microsoft Dynamics CRM 2015
Use o modelo de objeto Xrm.Page
Referência de programação do cliente
Criar scripts para fluxos de processos de negócios

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais