Criar scripts para fluxos de processos de negócios

 

Publicado: janeiro de 2017

Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Com o Microsoft Dynamics 365 (online e local) há um objeto do cliente que você pode usar para interagir com os fluxos de processos de negócios em seus scripts. O namespace Xrm.Page.data é estendido para incluir métodos em Xrm.Page.data.process. O namespace Xrm.Page.ui é estendido para incluir métodos em Xrm.Page.ui.process.

Neste tópico

Estrutura dos fluxos do processo empresarial

Ações que podem ser automatizadas

Eventos para fluxos do processo empresarial

Estrutura dos fluxos do processo empresarial

Os fluxos de processo empresarial consistem em uma série de etapas, contendo várias etapas. Somente um estágio é o estágio ativo. Quando as etapas necessárias em cada estágio são concluídas, o processo pode prosseguir para o próximo estágio e o estágio se torna ativo. Qual é o próximo estágio pode ser definido com base nas condições no fluxo de processo empresarial conforme mostrado no diagrama a seguir.

Objetos do fluxo do processo empresarial

Os estágios podem ser associados às entidades relacionadas específicas, portanto, um fluxo de processo corporativo pode medir várias entidades. O processo empresarial permanecerá o mesmo e leva o usuário para um término desejado.

A partir do Atualização de dezembro de 2016 para Dynamics 365 (online e local), definições de fluxos de processo empresarial diferentes podem ser associadas a funções diferentes e as instâncias podem ser executadas simultaneamente no mesmo registro da entidade. Os usuários podem alternar entre as instâncias de processo empresarial simultâneas e retomar seu trabalho em um estágio atual do processo.

Para obter mais informações:TechNet: Fluxos do processo de negócios

Ações que podem ser automatizadas

Geralmente, progredir no processo empresarial depende da entrada do usuário. Como um desenvolvedor, você pode executar as mesmas ações de forma programática em scripts de formulário.

  • Alterar o processo quando há mais de um processo disponível para a entidade.
    Use Xrm.Page.data.process.getEnabledProcesses para recuperar informações sobre todos os processos habilitados que o usuário pode optar para a entidade. Em seguida, use Xrm.Page.data.process.setActiveProcess para tornar uma das instâncias do processo habilitadas a ativa ou crie uma nova instância do processo.

  • Alterar a instância do processo para um registro da entidade
    Use getProcessInstances para recuperar informações sobre todas as instâncias do processo de um registro da entidade e use setActiveProcessInstance para definir uma instância do processo como a instância ativa.

  • Mover para o próximo estágio em que as todas as etapas necessárias são concluídas para tornar o estágio atual ativo.
    Usar Xrm.Page.data.process.moveNext

  • Mover para o estágio anterior e torná-lo o estágio atual ativo.
    Usar Xrm.Page.data.process.movePrevious

  • Selecione um estágio para exibir o status das etapas no estágio.
    Use Xrm.Page.data.process.getActivePath para recuperar informações sobre estágios que foram concluídos, o estágio atual ativo e os estágios disponíveis válidos do estágio ativo atual. Examine as etapas incluídas no estágio e compare os valores de atributo do formulário correspondente para determinar se foram concluídos.

  • Concluir uma etapa
    As etapas são concluídas quando os dados correspondentes são inseridos no formulário. Você pode determinar o atributo usando a etapa do método getAttribute. Isso retornará o nome lógico do atributo. Use Xrm.Page.getAttribute para recuperar o atributo de conjunto de Xrm.Page.data.entity.attributes e use o método do método 6881e99b-45e4-4552-8355-2eef296f2cd8#BKMK_setValue para definir o valor.

  • Detecte se uma etapa é necessária
    Use o método da etapa isRequired para determinar se uma etapa é exigida pelo fluxo de processos empresarial.

  • Expandir ou recolher o controle do fluxo de processo empresarial
    Usar Xrm.Page.ui.process.setDisplayState

  • Pular para um estágio concluído válido.
    Use Xrm.Page.data.process. setActiveStagepara configurar um dos estágios concluídos válidos para a entidade atual.

Também há algumas considerações que você pode fazer como um desenvolvedor que um usuário não pode executar.

  • Ocultar o controle de processo
    Use Xrm.Page.ui.process.setVisible, você poderá controlar se exibir o controle de fluxo do processo empresarial.

  • Consulte a definição de processo incluindo os estágios não visíveis atualmente
    Use Xrm.Page.data.process.getActiveProcess para consultar a definição de fluxo de processos empresarial, incluindo os estágios que não podem ser vistos devido à lógica de ramificação no processo.

Eventos para fluxos do processo empresarial

Você pode interagir com qualquer evento fornecido pelo formulário com fluxos de processos empresariais, mas os novos eventos a seguir permitem executar o código com base em eventos somente para o controle de fluxo do processo empresarial.

  • Você pode executar o código quando o estágio ativo do fluxo do processo empresarial mudar (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_OnStageChange) ou quando um estágio é selecionado (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_OnStageSelected).

  • Você poderá executar código quando o status de uma instância do fluxo do processo empresarial for alterado (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_OnProcessStatusChange). Uma Instância do fluxo de processo empresarial pode ter um dos seguintes status: Active, Finished ou Aborted.

Nenhum destes novos eventos oferece uma interface do usuário para registrar os manipuladores de eventos. Você deve usar métodos fornecidos para adicionar ou remover manipuladores para estes eventos no evento de formulário OnLoad.Para obter mais informações:f451f339-bcee-4260-9904-abc8c0efa153#BKMK_BPFControl

Confira Também

Use o modelo de objeto Xrm.Page
Xrm.Page.data.process (referência do cliente)
Exemplo: Xrm.Page.data.process.getEnabledProcesses
Exemplo: Xrm.Page.data.process.getActivePath
f451f339-bcee-4260-9904-abc8c0efa153#BKMK_BPFControl
TechNet: Fluxos do processo de negócios

Microsoft Dynamics 365

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais