activities
latest
false
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.
UiPath logo, featuring letters U and I in white

Atividades do fluxo de trabalho

Última atualização 4 de mar de 2026

Amostras de Fluxos de Trabalho

O painel Fragmentos no UiPath Studio armazena arquivos XAML adicionados pelos usuários. Os arquivos XAML de exemplo são armazenados em pastas. A pasta que armazena arquivos XAML usados em fluxos de trabalho de longa duração é chamada de Orchestration.

Os arquivos XAML de amostra são somente leitura. Você precisa criar um processo separado no Studio, onde replica as atividades e configurações encontradas nos fragmentos.

Esses fragmentos representam fluxos de trabalho amostrais criados com as atividades disponíveis no pacote de atividades Persistence .

Pré-requisitos

  • Para desenvolver fluxos de trabalho de longa duração, com base nos fluxos de trabalho no painel Fragmentos , é necessário ter o pacote UiPath.Persistence.Activities instalado.
  • Recomendamos usar o modelo Processo de orquestração para começar a criar fluxos de trabalho de longa duração.

Adicionar item de fila e aguardar até a conclusão

Esse fragmento cria um item da fila e suspende o fluxo de trabalho até que o processamento desse item da fila seja concluído.

  1. Arraste uma atividade Add Queue Item And Get Reference para o seu fluxo de trabalho.

    Esta atividade adiciona um Item de Fila em um contêiner de Fila localizado no Orchestrator, usando os parâmetros In/Out. Em seguida, ele recupera os dados correspondentes sobre o objeto do item da fila recém-criado em uma variável do tipo QueueItemData , para suspender o fluxo de trabalho, até que o item da fila seja adicionado à fila. Consulte a página Adicionar item de fila e obter referência para obter mais informações sobre a atividade.

    Quando os itens da fila forem adicionados à fila do orquestrador, todas as variáveis do tipo QueueItemData serão preenchidas com os dados recuperados do orquestrador.

    1. Na coleção Informações do item , crie um parâmetro com a Direção in/out e defina o valor como uma variável que você deseja passar como um Item da fila. Para este exemplo, passe uma variável String chamada Test.
    2. No campo de propriedade QueueItemObject(Output) , pressione CTRL + k em seu teclado e crie uma variável de tipo QueueItemData para armazenar os dados sobre o item da fila, após sua criação no Orchestrator. Para este exemplo, crie uma variável QueueItemData chamada QueueItemObject.

    docs image

  2. Arraste qualquer atividade que você deseja executar antes que o fluxo de trabalho seja suspenso para recuperar dados sobre o item da fila. Nesse fragmento, a seção Quaisquer etapas a serem executadas antes de suspender o fluxo de trabalho é comentada, atuando como um contêiner dentro do qual você pode colocar atividades que não serão executadas no runtime.

  3. Arraste uma atividade Wait For Queue Item And Resume para o seu fluxo de trabalho. Essa atividade espera que um Item da Fila seja adicionado e processado no Orchestrator para recuperar dados sobre ele e mapeá-lo de volta no fluxo de trabalho, dentro das variáveis do tipo QueueItemData . Consulte a página Esperar Item da Fila e Retomar para obter mais informações sobre a atividade.

    1. No campo de propriedade Objeto do item da fila (Entrada) , passe a variável QueueItemObject , para referenciar o item de fila exato que você deseja adicionar ao Orchestrator.
    2. No campo de propriedade Objeto do Item da Fila (Saída) , pressione CTRL + k em seu teclado e crie uma variável de tipo QueueItemData para armazenar os dados sobre o item da fila após ele ter sido processado e recuperado.
  4. Add a Write Line activity into your workflow, to print out the Queue Item that you added in Orchestrator. For this example, in the Text property field, pass the Test variable.

Criar tarefa externa e suspender até a conclusão

This snippet creates an External Action and suspends the workflow until the user completes the action.

  1. Arraste uma atividade Create External Task para o seu fluxo de trabalho. Esta atividade cria uma Ação Externa na Action Center com o Título da Tarefa, Prioridade da Tarefa, Catálogo de Tarefas (atualmente chamado de Catálogo de Ações) e Dados da Tarefa. Consulte a página Criar tarefa externa para obter mais informações sobre a atividade.

  2. Preencha a janela da propriedade TaskDataCollection com argumentos que passam informações In, Out ou In/Out. Para este exemplo, crie três argumentos, cada um deles com uma Direção diferente : In, Out, e In/Out. Defina o Tipo como String. Para o campo Valor , pressione CTRL + K em seu teclado e crie três variáveis, as quais fornecem informações (para argumentos do tipo In ) ou extraem informações (para argumentos do tipo Out ).

    For this example, create three String type variables:

    • InVariable - the Value of the argument of type In.
    • OutVariable - the Value of the argument of type Out.
    • InOutVariable - the Value of the argument of type In/Out.

    docs image

    No campo de propriedade Objeto de Tarefa (Saída) , pressione CTRL + k no teclado e crie uma variável do tipo ExternalTaskData . Para este exemplo, nomeie a variável TaskPersistData. Esse objeto ExternalTaskData é usado para passar dados do Orchestrator, para informar o Robô que até que uma tarefa de ação específica seja concluída, o fluxo de trabalho está suspenso.

  3. Adicione todas as atividades que deseja executar antes que o fluxo de trabalho seja suspenso para recuperar dados sobre o objeto ExternalTaskData .

    1. For this example, drag and drop a Sequence activity into your workflow and populate with three Write Line activities. Each Write Line activity is meant to output the data of the three variables passed in the External Task. Pass the following values in the Text property fields: InVariable, OutVariable, InOutVariable.
  4. Arraste uma atividade Wait For External Task and Resume para o seu fluxo de trabalho. Essa atividade suspende o fluxo de trabalho até que uma Tarefa Externa seja concluída e, em seguida, o mapeia de volta para o fluxo de trabalho, dentro das variáveis do tipo ExternalTaskData . Consulte a página Esperar pela tarefa de formulário e retomar para saber mais sobre essa atividade.

    1. No campo de propriedade Objeto de Tarefa (Entrada) , passe a variável ExternalTaskData , para referenciar a Tarefa Externa exata que você criou. Para este exemplo, passe a variável TaskPersistData .
    2. No campo de propriedade Ação da Tarefa , pressione CTRL + k em seu teclado e crie uma variável do tipo String e nomeie-a TaskAction. Isso armazena a ação tomada pelo usuário para concluir a tarefa.
    3. No campo de propriedade Objeto de Tarefa (Saída) , pressione CTRL+ k em seu teclado e crie uma variável do tipoExternalTaskData e nomeie-a TaskData. Essa variável armazena o objeto da Tarefa atualizado recuperado do Orchestrator após a conclusão da Ação externa.
  5. Add any activities that you want to run after the workflow is resumed. For this example, print in the Output panel all the values retrieved after the completion of the External Action, using four Write Line activities. Pass the following variables in the Text fields: TaskAction, InVariable, OutVariable, InOutVariable.

    docs image

Criar tarefa de formulário e suspender até a conclusão

Esse fragmento cria uma Actions de Formulário e suspende o fluxo de trabalho até que o usuário conclua as Actions.

  1. Arraste uma atividade Create Form Task para o seu fluxo de trabalho. Esta atividade cria uma ação de formulário no Action Center com o Título da tarefa, Prioridade da tarefa, Catálogo de tarefas (atualmente chamado de Catálogo de ações) e Dados da tarefa. Consulte a página Criar tarefa de formulário para obter mais informações sobre a atividade.

  2. Preencha a janela de propriedade Coleta de dados da tarefa com argumentos que passam informações In, Out ou In/Out. Para este exemplo, crie três argumentos, cada um deles com uma Direção diferente : In, Out, e In/Out. Defina o Tipo como String. Para o campo Valor , pressione CTRL + K em seu teclado e crie três variáveis que forneçam informações (para argumentos do tipo In ) ou extraiam informações (para argumentos do tipo Out ).

    For this example, create three String type variables:

    • InVariable - the Value of the argument of type In.
    • OutVariable - the Value of the argument of type Out.
    • InOutVariable - the Value of the argument of type In/Out.

    docs image

    No campo de propriedade Objeto de Tarefa (Saída) , pressione CTRL + k no teclado e crie uma variável do tipo FormTaskData . Para este exemplo, nomeie a variável TaskPersistData. Esse objeto FormTaskData é usado para passar dados do Orchestrator, para informar o Robô que até que uma tarefa de ação específica seja concluída, o fluxo de trabalho está suspenso.

  3. Add any activities that you want to run before the workflow is suspended to retrieve data about the FormTaskData object. For this example, drag and drop a Sequence activity into your workflow and populate it with three Write Line activities. Each Write Line activity is meant to output the data of the three variables passed in the External Action. Pass the following values in the Text property fields: InVariable, OutVariable, InOutVariable.

  4. Arraste uma atividade Wait For External Task and Resume para o seu fluxo de trabalho. Essa atividade suspende o fluxo de trabalho até que uma ação de formulário seja concluída e, em seguida, mapeia-a de volta ao fluxo de trabalho, dentro das variáveis do tipo FormTaskData .

    1. No campo de propriedade Objeto de Tarefa (Entrada) , passe a variável FormTaskData , para referenciar a Tarefa de Formulário exata que você criou na Action Center. Para este exemplo, passe a variável TaskPersistData .
    2. No campo de propriedade Ação da Tarefa , pressione CTRL + k em seu teclado e crie uma variável do tipo String e nomeie-a TaskAction. Isso armazena a ação tomada pelo usuário para concluir a tarefa.
    3. No campo de propriedade Objeto de Tarefa (Saída) , pressione CTRL + k em seu teclado e crie uma variável do tipo FormTaskData e nomeie-a TaskData. Essa variável armazena o objeto da Tarefa atualizado recuperado do Orchestrator após a conclusão da tarefa.
  5. Drag any activities that you want to run after the workflow is resumed. For this example, pass in the Output panel all the values retrieved after the completion of the External Action, using four Write Line activities. Pass the following variables in the Text fields: TaskAction, InVariable, OutVariable, InOutVariable.

Criar tarefa e atribuir ao usuário

Esse fragmento cria duas Ações Externas, as atribui a um usuário e exibe uma lista das atribuições de ações com falha.

  1. Drag two Create External Task activities into your workflow.

    1. Para a primeira atividade, dê um título à ação e defina sua prioridade. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável do tipo ExternalTaskData . Para este exemplo, nomeie-o Task1PersistData.

    2. Para a segunda atividade, dê um título à ação e defina sua prioridade. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável do tipo ExternalTaskData . Para este exemplo, nomeie-o Task2PersistData.

      docs image

  2. Arraste duas atividades Add To Collection para o seu fluxo de trabalho.

    Observação:

    A atividade Add To Collection é uma atividade Clássica. Para tornar a atividade Add To Collection disponível em seu projeto:

    • Have System.Activities package 22.4.1 or lower installed.
    • Acesse o painel Atividades .
    • Clique em Exibir Opções docs image ícone.
    • Clique em Mostrar Clássica. A atividade pode ser encontrada em Atividades padrão > Programação > Coleção.
    1. Nos campos de propriedade Coleção , pressione CTRL + k em seu teclado e crie uma variável de tipo List<TaskUserAssignment> e nomeie-a TaskAssignementsInput. Vá para o painel Variáveis e inicialize a variável no campo Padrão como new List(Of TaskUserAssignment.

    2. No campo de propriedade Item , crie uma instância de TaskUserAssignment que tenha os seguintes parâmetros: a variável ExternalTaskData e o endereço de e-mail do usuário ao qual você deseja atribuir a tarefa. Para este exemplo, digite o seguinte:

      • Thenew TaskUserAssignment(Task1PersistData.Id, "emailaddress") expression for the first Add To Collection activity
      • The new TaskUserAssignment(Task2PersistData.Id, "emailaddress") expression for the second Add To Collection activity.

      docs image

    3. Defina a propriedade TypeArgument como System.Collections.Generic.List<UiPath.Persistence.Activities.Tasks.TaskUserAssignment>.

  3. Drag an Assign Tasks activity into your workflow.

    1. No campo de propriedade TaskUserAssignments (Entrada) , passe a variável List<TaskUserAssignment> . Para este exemplo, passe a variável TaskAssignmentsInput .

    2. No campo de propriedade Tipo de Atribuição de Tarefas , digite a operação de atribuição exata que você deseja realizar: Atribuir ou Reatribuir. Para este exemplo, digite Assign.

    3. No campo de propriedade FailedTaskAssignments (Output) , pressione CTRL + k em seu teclado e crie uma variável do tipo List<TaskAssignmentResponse> e nomeie-a FailedTaskAssignmentsOutput.

      docs image

  4. Arraste uma atividade Write Line para gerar o número de atribuições de tarefas com falha. No campo de propriedade Text , passe a variável do tipo List<TaskAssignmentResponse> e, em seguida, use as propriedades .Count e .ToString . Para este exemplo, passe a seguinte expressão: FailedTaskAssignemntsOutput.Count.ToString.

Iniciar trabalho e retomar após a conclusão

Inicia um processo autônomo e suspende o fluxo de trabalho até que um determinado trabalho seja concluído.

  1. Arraste uma atividade Start Job And Get Reference para o seu fluxo de trabalho. Esta atividade inicia um Trabalho no Orchestrator, com base nos argumentos inseridos, e depois recupera o Objeto do Trabalho correspondente. Consulte a página Iniciar trabalho e obter referência para obter mais informações sobre a atividade.
    1. No campo de propriedade NomeDoProcesso , passe o Nome de exibição do Processo que você deseja usar para o Trabalho. Para este exemplo, armazene o nome dentro de uma variável. Pressione CTRL +k em seu teclado e crie uma variável de tipo String e nomeie-a ProcessName. No campo Valor , passe o nome de exibição do processo, por exemplo, TestProcess_test.

      Observação:

      O Nome de exibição precisa ser escrito no seguinte formato: packageName _environment.

      docs image

    2. Na propriedade Argumentos do trabalho (Coleção) , crie os argumentos que deseja usar ao chamar o trabalho no Orchestrator. Essa propriedade modifica os tipos de argumentos Out e In/Out com base na entrada recebida do Trabalho no Orchestrator e, em seguida, os mapeia de volta ao fluxo de trabalho. Para este exemplo, crie um argumento do Tipo String denominada Test, de Direção In/Out. No campo Valor , pressione CTRL + k no teclado e crie uma variável do tipo String . Nomeie a variável Test.

      docs image

    3. No campo de propriedade Objeto do Trabalho (Saída) , pressione CTRL + k em seu teclado e crie uma variável de tipo JobData denominada JobPersistenceData. Essa variável armazena o Objeto de dados criado do Trabalho quando o Trabalho no Orchestrator é chamado, para usá-lo para a atividade Wait for Job and Resume .

  2. Adicione todas as atividades que deseja executar antes que o fluxo de trabalho seja suspenso para recuperar dados sobre o objeto JobData .
  3. Arraste uma atividade Wait for Job and Resume para o seu fluxo de trabalho. Essa atividade suspende o fluxo de trabalho até que um trabalho específico no Orchestrator seja concluído. Depois que o trabalho for concluído, o fluxo de trabalho é retomado.
    1. No campo de propriedade Objeto do trabalho (Entrada) , passe a variável do tipo JobData , criada para a atividade Start Job And Get Reference . Para este exemplo, passe a variável JobPersistenceData . Isso aponta o robô para o trabalho exato que precisa ser concluído até que o fluxo de trabalho seja retomado.
    2. No campo de propriedade Objeto do Trabalho (Saída) , pressione CTRL + k em seu teclado e crie uma variável do tipo JobData . Para este exemplo, nomeie-o JobDataObject.
  4. Arraste uma atividade Write Line para imprimir o argumento que foi mapeado de volta para o fluxo de trabalho. No campo de propriedade Texto , passe a variável usada como o Valor para o argumento criado nos Argumentos do trabalho (Coleção). Para este exemplo, passe a variável Test .

Suspender e retomar após 1 hora

Este snippet suspende o fluxo de trabalho fornecido e o retoma após uma hora.

  1. Adicione todas as atividades que deseja executar antes que o fluxo de trabalho seja suspenso.

  2. Arraste uma atividade Resume After Delay para o seu fluxo de trabalho. Essa atividade suspende o fluxo de trabalho fornecido e o retoma em uma data e hora especificada. Consulte a página Resume After Delay para saber mais sobre essa atividade.

    1. No painel Variáveis , crie uma variável do tipo System.TimeSpan . Para este exemplo, nomeie a variável OneHour. Defina o valor Padrão da variável TimeSpan como New TimeSpan(1,0,0).
    2. No campo de propriedade Resume Time da atividade, passe a expressão DateTime.Now e a variável TimeSpan . Para este exemplo, passe a seguinte expressão: DateTime.Now + OneHour.

    docs image

  3. Adicione as atividades que deseja executar após a retomada do fluxo de trabalho.

Suspender e retomar após 5 minutos

Este snippet suspende o fluxo de trabalho fornecido e o retoma após cinco minutos.

  1. Arraste todas as atividades que deseja executar antes que o fluxo de trabalho seja suspenso.

  2. Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.

    1. No painel Variáveis , crie uma variável do tipo System.TimeSpan . Para este exemplo, nomeie a variável FiveMinute. Defina o valor Padrão da variável TimeSpan como New TimeSpan(0,5,0).
    2. No campo de propriedade Resume Time da atividade, passe a expressão DateTime.Now e a variável TimeSpan . Para este exemplo, passe a seguinte expressão: DateTime.Now + FiveMinute.

    docs image

  3. Arraste todas as atividades que deseja executar depois que o fluxo de trabalho for retomado.

Suspender e retomar após 90 segundos

Este snippet suspende o fluxo de trabalho fornecido e o retoma após noventa segundos.

  1. Adicione todas as atividades que deseja executar antes que o fluxo de trabalho seja suspenso.

  2. Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.

    1. No painel Variáveis , crie uma variável do tipo System.TimeSpan . Para este exemplo, nomeie a variável NinetySeconds. Defina o valor Padrão da variável TimeSpan como New TimeSpan(0,0,90).
    2. No campo de propriedade Resume Time da atividade, passe a expressão DateTime.Now e a variável TimeSpan . Para este exemplo, passe a seguinte expressão: DateTime.Now + NinetySeconds.

    docs image

  3. Arraste todas as atividades que deseja executar depois que o fluxo de trabalho for retomado.

Aguarde a conclusão de todas as tarefas do formulário

Este fragmento cria várias Ações de formulário em um loop, com base no número de faturas em uma tabela de dados, e suspende o fluxo de trabalho até que todas as ações sejam concluídas.

  1. Arraste uma atividade BuildDataTable para o seu fluxo de trabalho.

    1. No campo de propriedade Output , pressione CTRL + k no teclado e crie uma variável do tipo DataTable para armazenar a tabela de dados que você está construindo. Para este exemplo, nomeie a variável DataTable como HighValueInvoices.
    2. Clicar docs image. A Janela Construir tabela de dados será aberta.
    3. Renomeie Column1 como InvoiceNumber e Column2 como InvoiceAmount.
    4. Adicione dados dentro das linhas da tabela e pressione OK.

    docs image

  2. Arraste uma atividade Assign para o seu fluxo de trabalho. Essa atividade atribui um nome para a Tabela de dados, armazenado em uma variável String .

    1. No campo de propriedade Para , passe a variável DataTable . Para este exemplo, passe a variável HighValueInvoices .
    2. No campo propriedade Valor , pressione CTRL + k no teclado e crie uma variável do tipo String . Para este exemplo, nomeie-o DataTableName. Defina o valor Padrão da variável DataTableName como ``"invoices"`.
  3. Arraste uma atividade For Each para dentro do seu fluxo de trabalho. No campo de propriedade Lista de itens , passe uma expressão com o seguinte formato: DataTableVariable.Rows. Para este exemplo, passe HighValueInvoices.Rows. Isso itera através de todas as linhas na tabela de dados.

  4. Drag a Create Form Task activity inside the Body of the For Each activity.

    1. No campo de propriedade Título da tarefa , insira o valor do Número da fatura que a atividade For Each recupera e converta-o para String. Para este exemplo, insira a seguinte expressão: item("InvoiceNumber").ToString, onde InvoiceNumber é o nome da coluna que contém o respectivo número para cada fatura.
    2. Em Dados do formulário (Coleção), crie um argumento que passe cada valor de fatura dentro da Ação de formulário. Crie um argumento de Tipo String e defina a Direção como In. No campo Valor , insira cada valor de fatura e converta-o para String. Para este exemplo, insira a seguinte expressão: item("InvoiceAmount").ToString, onde InvoiceAmount é o nome da coluna que contém o respectivo valor para cada fatura.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável do tipo FormTaskData . Para este exemplo, nomeie a variável como TaskPersistData.

    docs image

  5. Drag an Add To Collection activity inside the Body of the For Each activity.

    1. No campo de propriedade Collection , pressione CTRL + k em seu teclado e crie uma variável List<FormTaskData> e nomeie-a TaskList. Vá para o painel Variáveis e inicialize a variável no campo Padrão como New List(Of UiPath.Persistence.Activities.FormTask.FormTaskData.
    2. No campo de propriedade Item , passe a variável FormTaskData , criada para armazenar os dados nas Ações de formulário criadas. Para este exemplo, passe a variável TaskPersistData .
    3. Para a propriedade TypeArgument , escolha UiPath.Persistence.Activities.FormTask.FormTaskData.
  6. Drag a Parallel For Each activity into your workflow.

    1. Para a propriedade TypeArgument , escolha UiPath.Persistence.Activities.FormTask.FormTaskData.
    2. No campo de propriedade Values , passe a variável List<FormTaskData> . Para este exemplo, passe a variável TaskList .
  7. Arraste uma atividade Wait for Form Task and Resume para o corpo da atividade Parallel For Each .

    1. No campo de propriedade TaskObject(Input) , insira o objeto item , referenciado na atividade Parallel For Each . Neste caso, o objeto item representa as Ações de formulário armazenadas na variável TaskList .
    2. No campo de propriedade TaskAction , pressione CTRL + k no teclado e crie uma variável String . Para este exemplo, nomeie-o TaskAction.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie-o TaskData.

    docs image

  8. Drag a Write Line activity into your workflow. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction variable.

Aguarde a conclusão de qualquer tarefa de formulário

Esse fragmento cria várias Actions de formulário em sequência e suspende o fluxo de trabalho até que qualquer uma das Actions de formulário seja concluída.

  1. Drag a Create Form Task activity into your sequence workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle1. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 1".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver1".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData1.
  2. Drag a second Create Form Task activity into your workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle2. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 2".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver2".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData2.
  3. Drag a third Create Form Task activity into your workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle3. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 3".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver3".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData3.
  4. Drag a Pick activity into your workflow.

  5. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task1).

  6. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task1) activity.

    1. No campo de propriedade ObjetoDeTarefa (Input) , passe a variável FormTaskData criada para armazenar dados sobre a Ação de formulário. Para este exemplo, passe a variável TaskPersistData1 .
    2. No campo de propriedade TaskAction , pressione CTRL + k e crie uma variável String . Nomeie-a TaskAction1.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k no teclado e crie uma variável FormTaskData . Nomeie-a TaskData1.
  7. Drag a Write Line activity into the Action body of the Pick Branch (Task1) activity. This activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction1 variable.

    docs image

  8. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task2).

  9. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task2) activity.

    1. No campo de propriedade ObjetoDeTarefa (Input) , passe a variável FormTaskData criada para armazenar dados sobre a Ação de formulário. Para este exemplo, passe a variável TaskPersistData2 .
    2. No campo de propriedade TaskAction , pressione CTRL + k e crie uma variável String . Nomeie-a TaskAction2.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k no teclado e crie uma variável FormTaskData . Nomeie-a TaskData2.
  10. Drag a Write Line activity into the Action body of the Pick Branch (Task2) activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction2 variable.

  11. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task3).

  12. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task3) activity.

    1. No campo de propriedade ObjetoDeTarefa (Input) , passe a variável FormTaskData criada para armazenar dados sobre a Ação de formulário. Para este exemplo, passe a variável TaskPersistData3 .
    2. No campo de propriedade TaskAction , pressione CTRL + k e crie uma variável String . Nomeie-a TaskAction3.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k no teclado e crie uma variável FormTaskData . Nomeie-a TaskData3.
  13. Drag a Write Line activity into the Action body of the Pick Branch (Task3) activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction3 variable.

Aguarde a Conclusão de algumas Tarefas de Formulário em Loop

Esse fragmento cria várias Actions de formulário com base na entrada de uma Tabela de dados e suspende o fluxo de trabalho até que um determinado conjunto de Actions de formulário seja concluído.

  1. Drag a Build Data Table activity into your workflow.

    1. No campo de propriedade DataTable , pressione CTRL + k no teclado e crie uma variável System.DataTable . Para este exemplo, nomeie-o CodeReviews.
    2. Clicar docs image. A Janela Construir tabela de dados será aberta.
    3. Renomeie Column1 como ReviewerName e Column2 como ReviewerType. Defina o Tipo da coluna ReviewerType como String.
    4. Adicione dados dentro das linhas da tabela. Para a coluna ReviewerType , esse exemplo usa dois tipos de revisores: proprietários de código e revisores.

    docs image

  2. Drag an Assign activity into your workflow. This assigns a name to the data table you created. In the To property field, pass the System.DataTable variable and add .TableName property to it. In the Value field, press CTRL + k on your keyboard and create a String variable. For this example, name it DataTableName.

  3. Drag a Parallel For Each activity into your workflow. For this example, name it Create Tasks for PR Review.

    1. No campo de propriedade Values , passe a variável System.DataTable e adicione a propriedade .AsEnumerable. Para este exemplo, passe a seguinte expressão: CodeReviews.AsEnumerable.
  4. Arraste uma atividade Assign para o corpo da atividade Parallel For Each .

    1. No campo de propriedade Para , pressione CTRL + k em seu teclado e crie uma variável String que tenha os dados recuperados da coluna ReviewerType na tabela de dados CodeReviews . Para este exemplo, nomeie a variável ReviewerType.
    2. No campo de propriedade Valor , passe uma expressão que recupere cada item da linha da coluna ReviewerType e o armazene na variável criada dentro do campo Para . Para este exemplo, passe a seguinte expressão: ìtem("ReviewerType").toString.

    docs image

  5. Drag a Create Form Task activity into the Body of the Parallel For Each activity.

    1. No campo de propriedade TítuloDaTarefa , passe a seguinte expressão: "Code Review - " + InPullRequestName. O InPullRequestName é uma variável String que tem o valor Padrão "#1".
    2. Na propriedade FormData(Collection) , crie quatro argumentos do tipo String:
    3. 'PR Number' - com a Direção In, e o Valor definido como o InPullRequestName.
    4. Reviewer Name - com a Direção In, e o Valor definido como item("ReviewerName").toString.
    5. Reviewer Type - com a Direção In/Out e o valor definido como a variável ReviewerType .
    6. Reviewer Comment - com a Direção Out. No campo Valor , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a ReviewerComments. Esse argumento mapeia para o fluxo de trabalho quaisquer comentários que são feitos na Ação.
    7. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Nomeie-a TaskPersistData.

    docs image

  6. Drag an Add To Collection activity into the body of the Parallel For Each activity. This activity stores all the Form Actions created into a list.

    1. No campo de propriedade Collection , pressione CTRL + k no teclado e crie uma variável List<FormTaskData> . Nomeie-a TaskDataList. Vá para o painel Variáveis e defina o valor Padrão da variável como New List(of UiPath.Persistence.Activities.FormTask.FormTaskData).
    2. No campo de propriedade Item , passe a variável FormTaskData . Para este exemplo, passe a variável TaskPersistData .
    3. Para a propriedade TypeArgument , escolha UiPath.Persistence.Activities.FormTask.FormTaskData.
  7. In the Variables panel, create two variables of type Int32 and set their Default value to 0: OwnersApprovals and ReviewersApprovals.

  8. Arraste outra atividade Parallel For Each . Para este exemplo, nomeie-o Wait for Conditional Task(s) Completion.

    1. No campo de propriedade Condição , passe a seguinte expressão: OwnersApprovals>=2 Or (OwnersApprovals = 1 And ReviewersApprovals>=2). Isso condiciona o fluxo de trabalho a retomar apenas quando a condição for atendida.
    2. Para a propriedade TypeArgument , escolha UiPath.Persistence.Activities.FormTask.FormTaskData.
    3. No campo de propriedade Valor , passe a lista na qual as Ações de formulário são armazenadas. Para este exemplo, passe a variável TaskDataList .

    docs image

  9. Arraste uma atividade Sequence para o Corpo da atividade Wait For Conditional Task(s) Completion . Renomeie-o Wait for Task and Resume.

  10. Arraste uma atividade Wait For Form Task And Resume para a atividade de sequência Wait for Task and Resume .

    1. No campo de propriedade TaskObject(Input) , passe a variável item .
    2. No campo de propriedade TaskAction , pressione CTRL + k no teclado e crie uma variável String . Para este exemplo, nomeie-o TaskAction.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie-o TaskData.
  11. Drag an If activity into the Wait for Task and Resume sequence activity. This activity is meant to count the number of Form Actions that have been approved by code owners.

    1. No campo de propriedade Condição, passe a seguinte expressão: TaskAction="approve" And ReviewerType="code owner".
    2. Arraste e solte uma atividade Assign no bloco Then . No campo de propriedade Para , passe a variável OwnersApprovals . No campo propriedade Valor, passe a expressão OwnersApprovals + 1 .

    docs image

  12. Drag another If activity into the Wait for Task and Resume sequence activity. This activity is meant to count the number of Form Actions that have been approved by reviewers.

    1. No campo de propriedade Condição, passe a seguinte expressão: TaskAction="approve" And ReviewerType="reviewer".
    2. Arraste uma atividade Assign para o bloco Then . No campo de propriedade Para , passe a variável ReviewersApprovals . No campo propriedade Valor, passe a expressão ReviewersApprovals + 1 .

    docs image

  13. Arraste três atividades Write Line para a atividade de sequência Wait for Task and Resume . Essa atividade exibe os valores fornecidos no painel Saída .

    1. Na primeira atividade, passe a variável ReviewComments .
    2. Na segunda atividade, passe a variável OwnersApprovals e adicione a propriedade .toString .
    3. Na terceira atividade, passe a variável ReviewersApprovals e adicione a propriedade .toString .

Aguarde a conclusão de algumas tarefas de formulário

Este snippet cria três ações de formulário e suspende o fluxo de trabalho até que duas ações sejam concluídas.

  1. Drag a Create Form Task activity into your sequence workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle1. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 1".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver1".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData1.
  2. Drag a Create Form Activity into your sequence workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle2. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 2".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver2".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData2.
  3. Drag a Create Form Activity into your sequence workflow.

    1. No campo de propriedade TítuloDaTarefa , pressione CTRL + k no teclado e crie uma variável String . Nomeie-a TaskTitle3. No painel Variáveis , defina o valor Padrão como "Task - " + "Approver 3".
    2. Na propriedade FormData(Collection) , crie um argumento de Tipo String e Direção In. Nomeie o argumento Approver e defina o Valor como "Approver3".
    3. No campo de propriedade TaskObject(Output) , pressione CTRL + k no teclado e crie uma variável FormTaskData . Para este exemplo, nomeie a variável TaskPersistData3.
  4. Drag a Parallel activity into your workflow.

    1. No campo propriedade Condição , pressione CTRL + k no teclado e crie uma variável Int32 . Para este exemplo, nomeie a variável CompleteTasksCount e defina o valor Padrão como 0.
    2. No Editor de Expressão dentro da propriedade Condição , defina a condição como CompleteTasksCount=2. Isso condiciona a atividade Parallel a ser concluída quando duas das três ações forem concluídas.

    docs image

  5. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task1.

  6. In the Sequence Task1 activity, drag a Wait For Form Task and Resume activity. Rename it as Wait for Form Task and Resume(Task1).

    1. No campo de propriedade ObjetoDeTarefa (Input) , passe a variável FormTaskData criada para armazenar dados sobre a Ação de formulário. Para este exemplo, passe a variável TaskPersistData1 .
    2. No campo de propriedade TaskAction , pressione CTRL + k e crie uma variável String . Nomeie-a TaskAction1.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k no teclado e crie uma variável FormTaskData . Nomeie-a TaskData1.

    docs image

  7. Drag a Write Line activity into the Action body of the Sequence Task1 activity. his activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction1 variable.

  8. Arraste uma atividade Assign na atividade Wait for Form Task and Resume(Task1) . Passe o CompleteTaskCount no campo To e a CompleteTaskCount + 1 expressão no campo Value . Se a ação for concluída e o fluxo de trabalho for retomado, uma nova iteração será adicionada à variável CompleteTaskCount .

    docs image

  9. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task2.

  10. Na atividade Sequence Task2 , arraste e solte uma atividade Wait For Form Task and Resume . Renomear como Wait for Form Task and Resume(Task2)

    1. No campo de propriedade TaskObject (Input), passe a variável FormTaskData criada para armazenar os dados da Ação do Formulário. Para este exemplo, passe a variável TaskPersistData2.
    2. No campo de propriedade TaskAction , pressione CTRL + ke crie uma variável String. Nomeie-o TaskAction2
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k em seu teclado e crie uma variável FormTaskData . Nomeie-a TaskData2.
  11. Drag a Write Line activity into the body of the Sequence Task2 activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction2 variable.

  12. Arraste uma atividade Assign na atividade Wait for Form Task and Resume(Task2) . Passe o CompleteTaskCountno campo To e a expressão CompleteTaskCount + 1no campo Value . Se a ação for concluída e o fluxo de trabalho for retomado, uma nova iteração será adicionada à variávelCompleteTaskCount .

  13. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task3.

  14. In the Sequence Task3 activity, drag and drop a Wait For Form Task and Resume activity. Rename it as Wait for Form Task and Resume(Task3).

    1. No campo de propriedade ObjetoDeTarefa (Input) , passe a variável FormTaskData criada para armazenar dados sobre a Ação de formulário. Para este exemplo, passe a variável TaskPersistData3 .
    2. No campo de propriedade TaskAction , pressione CTRL + k e crie uma variável String . Nomeie-a TaskAction3.
    3. No campo de propriedade TaskObject(Output) , pressione CTRL+ k no teclado e crie uma variável FormTaskData . Nomeie-a TaskData3.
  15. Drag a Write Line activity into the Action body of the Sequence Task3 activity. his activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction3 variable.

  16. Arraste uma atividade Assign na atividade Wait for Form Task and Resume(Task3) . Passe o CompleteTaskCountno campo To e a expressão CompleteTaskCount + 1no campo Value . Se a ação for concluída e o fluxo de trabalho for retomado, uma nova iteração será adicionada à variávelCompleteTaskCount .

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades