studio
2024.10
true
Guia do usuário do Studio
Last updated 30 de out de 2024

Geração de filas com fluxos de trabalho codificados e APIs do Orchestrator

Este tutorial mostra como criar uma automação que gera filas aleatórias usando as APIs do Orchestrator, acessadas pelo Swagger. A automação cria uma nova fila, gera itens de fila com dados aleatórios e os adiciona à fila.

Pré-requisitos:
  • Para este exemplo, você precisa usar uma biblioteca ou uma automação de teste. Mas você pode usar fluxos de trabalho codificados para qualquer tipo de processo RPA.
  • System.Activities 23.10
  • Testing.Activities 23.10
  • Adicione um novo serviço (Orchestrator) na seção Serviços do seu projeto do Studio.
    • Adicione a definição do Orchestrator API Swagger da instância que você deseja usar em arquivo ou link e, em seguida, clique em Carregar. Para obter o link de definição do swagger, visite Referências da API.
    • Desmarque todos os endpoints , exceto QueueDefinitions, e clique em Salvar.
  1. Crie um fluxo de trabalho codificado selecionando Novo e, em seguida, Fluxo de trabalho codificado no grupo Arquivo.
  2. Dentro do método Execute, crie uma instância do objeto HttpClient, chamando o BuildClient(String, Boolean)método. Esse método cria um cliente HTTP com um escopo especificado.
    O método recebe dois parâmetros, que possuem os seguintes valores padrão:
    1. scope "Orchestrator" - O escopo OAuth 2.0 para o qual obter um token de acesso.
    2. force True - Gera um novo token de acesso.
    var client = BuildClient();var client = BuildClient();
  3. Crie uma instância do QueueDefinitionsClient, passe a instância do cliente como um parâmetro e atribua-a a uma variável chamada queueClient. Essa variável de cliente é usada para interagir com as APIs de Definições de fila do Orchestrator.
    var queueClient = new QueueDefinitionsClient(client);var queueClient = new QueueDefinitionsClient(client);


  4. Gere um nome de fila e crie uma nova fila.
    var queueName = "SampleQueue" + Guid.NewGuid().ToString("N");
    var queue = queueClient.PostAsync(new QueueDefinitionDto() { Name = queueName }, null).Result;var queueName = "SampleQueue" + Guid.NewGuid().ToString("N");
    var queue = queueClient.PostAsync(new QueueDefinitionDto() { Name = queueName }, null).Result;
    


  5. Crie um loop paralelo Para Cada para iterar em um intervalo de números entre 0 e 100. Use um dicionário para armazenar os valores de Endereço, Nome e Sobrenome. Gere valores aleatórios para esses itens, usando as APIs Address, GivenName e LastName.
    Nesse cenário, é usado um loop paralelo Para Cada em vez de um Para cada simples, com o objetivo de melhorar o desempenho da automação.
    Parallel.ForEach(Enumerable.Range(0, 100), i =>
          {
            var data = new Dictionary<string, object>()
            {
              { "Address", testing.Address("Romania", "Bucharest")["City"].ToString() },
              { "FirstName", testing.GivenName() },
              { "LastName", testing.LastName() }
            };Parallel.ForEach(Enumerable.Range(0, 100), i =>
          {
            var data = new Dictionary<string, object>()
            {
              { "Address", testing.Address("Romania", "Bucharest")["City"].ToString() },
              { "FirstName", testing.GivenName() },
              { "LastName", testing.LastName() }
            };
    


  6. Adicione os dados aleatórios a uma fila, usando a API AddQueueItem.
    system.AddQueueItem(queueName, null, DateTime.UtcNow, data, DateTime.UtcNow, QueueItemPriority.Normal, i.ToString(), 100);system.AddQueueItem(queueName, null, DateTime.UtcNow, data, DateTime.UtcNow, QueueItemPriority.Normal, i.ToString(), 100);

Projeto de amostra

Para seguir as etapas, baixe o seguinte projeto de exemplo: Geração de fila com fluxos de trabalho codificados e APIs do Orchestrator.

  • Projeto de amostra

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo White
Confiança e segurança
© 2005-2024 UiPath. Todos os direitos reservados.