Compartilhar via


Criar uma ação de processo personalizada

Use ações de processo personalizadas quando quiser automatizar uma série de comandos no sistema. As ações de processo personalizadas expandem o vocabulário disponível para os desenvolvedores expressarem os processos empresariais. Uma ação de processo personalizada usa os principais verbos fornecidos pelo sistema, como Criar, Atualizar, Excluir e Atribuir, para criar verbos mais expressivos como Aprovar, Encaminhar, Direcionar ou Agendar. Se a definição de um processo de negócios é alterada, alguém que não seja um desenvolvedor pode editar a ação de processo personalizada para que o código não precise ser alterado.

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

Criar uma ação de processo personalizada

Importante

Se você estiver criando uma ação de processo personalizada 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.

Como os processos do fluxo de trabalho, as ações de processo personalizadas 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.

  • Tabela

    Com processos de ações, é possível selecionar uma tabela para fornecer contexto para o fluxo de trabalho 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.

Diferentemente dos processos do fluxo de trabalho, não é necessário definir as seguintes opções:

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

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

  • Executado em segundo plano: As ações 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 não têm: argumentos de entrada e saída.

Observação

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

Editar uma ação de processo personalizada

Você deve desativar ações de processo personalizadas 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 é 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á algumas 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 transações suportadas. Por exemplo, se o código executar ações em outros sistemas que estão além do escopo das transações. 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ê pode habilitar a reversão se uma ação é disparada por uma mensagem da web Power Apps.

  • 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 estágios e etapas

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

Definir argumentos do processo

Quando os desenvolvedores usam mensagens, eles podem começar 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 de processo personalizada 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 pode ser 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 e permite 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 entityReference, 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 de processo personalizadas 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, consulte 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

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

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).