Compartilhar via


Configurar ações de processo personalizadas de um fluxo de trabalho

Você pode habilitar uma ação de processo personalizada de um fluxo de trabalho em tempo real sem escrever código. Mais informações: Invocar ações personalizadas de um fluxo de trabalho

Você também pode criar uma ação de processo personalizada para que um desenvolvedor possa usá-la no código ou que talvez seja necessário editar uma ação definida anteriormente. Como processos de fluxo de trabalho em tempo real, considere o seguinte:

  • O que a ação deve fazer?

  • Sob quais condições as ações devem ser executadas?

Diferente de processos de fluxo de trabalho em tempo real, não é necessário definir as seguintes opções:

  • Iniciar Quando: as ações de processo personalizadas iniciam quando o código chama a mensagem gerada para elas.

  • Escopo: as ações de processo personalizadas sempre são executadas no contexto do usuário da chamada.

  • Executado em segundo plano: as ações de processo personalizadas são sempre fluxos de trabalho em tempo real.

Uma ação de processo personalizada também tem algo que os processos do fluxo de trabalho em tempo real não têm: argumentos de entrada e saída. Mais informações: Definir argumentos de processo

Criar uma ação de processo personalizada

Importante

Se você estiver criando uma ação que será incluída como parte de uma solução a ser distribuída, crie no contexto da solução. Vá para Configurações > Soluções e localize a solução não gerenciada da qual essa ação fará parte. Em seguida, na barra de menus, selecione Novo > Processo. Isso irá garantir que o prefixo de personalização associado ao nome da ação será consistente com outros componentes da solução. Depois de criar a ação, você não poderá alterar o prefixo.

Observação

Se você pretende escrever um plug-in para implementar sua lógica para uma ação de processo personalizada em vez de usar o designer de fluxo de trabalho, deverá usar a API Personalizada. Mais informações: Comparar a ação de processo personalizada e a API personalizada

Como processos de fluxo de trabalho em tempo real, as ações têm as seguintes propriedades na caixa de diálogo Criar Processo:

  • Nome do Processo

    Depois de inserir um nome para o processo, um nome exclusivo será criado para ele por meio da remoção de todos os espaços ou caracteres especiais do nome do processo.

  • Categoria

    Esta propriedade estabelece que isso é um processo da ação. Você não pode alterar após salvar o processo.

  • Entidade

    Com processos de ações, é possível selecionar uma tabela para fornecer contexto para o fluxo de trabalho em tempo real assim como outros tipos de processos, mas você também tem a opção de escolher Nenhum (global). Use a ação se sua ação não exigir o contexto de uma tabela específica. Você não pode alterar após salvar o processo.

  • Tipo

    Você pode usar essa propriedade para escolher criar uma nova ação de processo personalizada do zero criar ou iniciar de um modelo existente.

Editar uma ação

Você deve desativar processos antes de poder editar.

Você pode editar uma ação de processo personalizada criada como parte de uma solução não gerenciada ou incluídos em uma solução instalada na sua organização. Se a solução for uma solução gerenciada, você não poderá editá-la. O publicador da solução tem a opção de editar as propriedades gerenciadas de forma que a ação instalada com uma solução gerenciada não possa ser editada.

Quando uma ação é salva, um nome exclusivo é gerado com base no nome do processo. Esse nome exclusivo tem o prefixo de personalização adicionado pelo fornecedor de soluções. Esse é o nome da mensagem que um desenvolvedor usará no código.

Ao editar uma ação, você tem as seguintes opções:

  • Nome do Processo

    Depois que o processo for criado e o nome exclusivo for gerado com base no nome do processo, é possível editar o nome do processo. Talvez você queira aplicar uma convenção de nomenclatura para facilitar a localização de processos específicos.

  • Nome Exclusivo

    Quando uma ação de processo personalizada é salva, um nome exclusivo é gerado com base no nome do processo. Esse nome exclusivo tem o prefixo de personalização adicionado pelo fornecedor de soluções. Esse é o nome da mensagem que um desenvolvedor usará no código. Não altere o nome exclusivo se o processo foi ativado e o código estiver esperando a chamada da ação usando esse nome.

    Importante

    Quando a ação é ativada e o código é criado para usar um nome exclusivo, o nome exclusivo não deve ser alterado sem alterar também o código que faz referência a ele.

  • Habilitar reversão

    Em geral, os processos que oferecem suporte às transações irão "desfazer" (ou reverter) toda a operação se houver falha em qualquer parte. Há exceções. Algumas ações que os desenvolvedores podem fazer no código iniciado pela ação de processo personalizada poderão não ser compatíveis com transações. Um exemplo seria quando o código executa ações em outros sistemas que estão além do escopo da transação. Elas não podem ser revertidas pela execução da ação no aplicativo. Algumas mensagens na plataforma não oferecem suporte às transações. Mas tudo o que você pode fazer apenas com a interface do usuário da ação terá suporte às transações. Todas as ações que fazem parte de um fluxo de trabalho em tempo real são consideradas nas transações, mas com ações que você tem a opção de excluir.

    Você deve usar o desenvolvedor que usará essa mensagem para determinar se deve ou não ser estar em transação. Geralmente, uma ação deve estar em transações se as ações executadas por processos de negócios não façam sentido, a menos que todas sejam concluídas com êxito. O exemplo clássico é transferir fundos entre duas contas bancárias. Se você retirar fundos de uma conta, é necessário depositá-lo em outra. Quando uma falha, ambas falharão.

    Observação

    • Você não pode habilitar a reversão se uma ação de processo personalizada é invocada diretamente de um fluxo de trabalho. Você poderá habilitar a reversão se uma ação de processo personalizada for acionada por uma mensagem de serviços Web do Power Apps.
    • Se a ação definida não alterar os dados, mas apenas recuperar dados, haverá certas situações em que o desempenho poderá ser melhorado desativando Habilitar reversão.
  • Ativar como

    Como todos os processos, você pode ativar o processo como um modelo e usá-lo como ponto de partida avançada para processos que seguem um padrão semelhante.

  • Definir Argumentos do Processo

    Nessa área, você especificará todos os dados que a ação espera iniciar e quais dados são transmitidos da ação. Mais informações: Definir argumentos de processo

  • Adicionar condições, ações e estágios

    Como os processos, você especifica as ações para executar e quando as executar. Mais informações: Adicionar estágios, condições e ações

Definir argumentos do processo

Quando um desenvolvedor usa uma mensagem, é provável que ele comece a usar alguns dados que podem passar para a mensagem. Por exemplo, para criar uma linha de caso, talvez o valor de título do caso seja transmitido como o argumento de entrada.

Quando a mensagem for concluída, o desenvolvedor pode precisar transmitir alguns dados alterados ou gerados pela mensagem para outra operação no código. Esses dados são o argumento de saída.

Os argumentos de entrada e saída devem ter um nome, um tipo e algumas informações sobre onde o argumento é sempre obrigatório. Você também pode fornecer uma descrição.

O nome da mensagem e as informações sobre todos os argumentos do processo representam a assinatura da mensagem. Após uma ação ser ativada e estiver sendo usada no código, a assinatura não deverá ser alterada. Modificar esta assinatura fará com que qualquer código que use a mensagem falhe. A única exceção a isso seria alterar um dos parâmetros de modo que não seja sempre necessário.

Alterar a ordem dos argumentos classificando ou movendo para cima ou para baixo não faz diferença porque os argumentos são identificados pelo nome, não pela ordem. Alterar a descrição não quebrará o código usando a mensagem.

Tipos de argumento do processo de ação

A tabela a seguir descreve os tipos de argumento do processo da ação.

Tipo Descrição
Booliano Um valor true ou false.
DateTime Um valor que armazena informações de data e hora.
Decimal Um valor numérico com precisão decimal. Usado quando a precisão é extremamente importante.
Tabela Uma linha para a tabela especificada. Quando você seleciona Tabela, a lista suspensa é habilitada, permitindo selecionar o tipo de tabela.
entityCollection Uma coleção de linhas de tabela.
entityReference Um objeto que contém o nome, a ID e o tipo de uma linha de tabela que o identifica exclusivamente. Quando você seleciona tableReference, a lista suspensa é habilitada e permite selecionar o tipo de tabela.
Float Um valor numérico com precisão decimal. Usado quando os dados são fornecidos de uma medida que não é absoluta precisa.
Inteiro Um número inteiro.
Dinheiro Um valor que armazena dados sobre um valor.
Picklist Um valor que representa uma opção para um atributo OptionSet.
Cadeia de Caracteres Um valor de texto.

Observação

Os valores de argumento entityCollection não podem ser definidos na interface do usuário para condições ou ações. São fornecidos para uso pelos desenvolvedores no código personalizado. Mais informações: Criar suas próprias mensagens

Adicionar estágios e etapas

As ações são um tipo de processo muito semelhante aos fluxos de trabalho em tempo real. Todas as etapas que podem ser usadas em fluxos de trabalho em tempo real podem ser usadas em ações. Para obter informações sobre as etapas que podem ser usadas para fluxos de trabalho e ações em tempo real, acesse Estágios e etapas do fluxo de trabalho.

Além das etapas que podem ser usadas com fluxos de trabalho em tempo real, as ações também têm a etapa Atribuir valor. Nas ações, elas podem ser usadas apenas para definir argumentos de saída. É possível usar o assistente de formulário para definir argumentos de saída para valores específicos ou, mais provavelmente, para valores da linha que a ação está executando, linhas relacionadas a uma linha de relacionamento muitos para um, linhas criadas na etapa anterior ou valores que fazem parte do próprio processo.

Propriedades gerenciadas

As ações de processos personalizadas têm duas propriedades gerenciadas relevantes

É Personalizável

A propriedade gerenciada É personalizável controla se alguém que instala um solução gerenciada que contém a ação de processo personalizada pode editá-la ou excluí-la. Se desejar que a ação de processo personalizada seja editada ou excluída quando incluída em um solução gerenciada, você deve definir esta propriedade como verdadeira.

A Etapa de Processamento Personalizado é Permitida para Outros Editores

A propriedade gerenciada A Etapa de Processamento Personalizado é Permitida para Outros Editores controla se os desenvolvedores de plug-ins de terceiros podem registrar etapas de plug-in na mensagem criada pela ação do processo personalizada. Quando isso for verdadeiro, os plug-ins registrados por qualquer pessoa nesta mensagem serão executados e podem modificar o comportamento da ação do processo personalizado. Quando falso, apenas as etapas de plug-ins registradas em uma solução do mesmo fornecedor de soluções serão executadas.

Próximas etapas

Usar ações
Invocar ações personalizadas de um fluxo de trabalho
Monitorando fluxos de trabalho em tempo real e ações

Observação

Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)

A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).