studio
2022.10
false
Guia do usuário do Studio
Last updated 2 de out de 2024

Máquinas de estado

Uma máquina de estado é um tipo de automação que usa um número finito de estados em sua execução. Ela pode entrar em um estado quando for disparada por uma atividade e sair desse estado quando outra atividade for disparada.

Outro aspecto importante das máquinas de estado são as transições, pois elas também permitem que você adicione condições com base em qual estado pular para outro. Essas condições são representadas por setas ou ramificações entre os estados.

Há duas atividades que são específicas para máquinas de estado, são elas: State e Final State, encontradas em Fluxo de trabalho > Máquina de estado.

Observação: você só pode criar um estado inicial, mas é possível ter mais de um estado final.

A atividade State contém três seções, Entrada, Saída e Transições, já a Final State contém apenas uma seção, Entrada. Ambas as atividades podem ser expandidas clicando duas vezes nelas, para exibir mais informações e editá-las.

As seções Entrada e Saída permitem que você adicione gatilhos de entrada e saída para o estado selecionado, já a seção Transições exibe todas as transições vinculadas ao estado selecionado.





As transições serão expandidas quando você clicar duas vezes nelas, assim como a atividade State. Elas contêm três seções, Gatilho, Condição e Ação, que permitem que você adicione um gatilho para o próximo estado ou adicione uma condição sob a qual uma atividade ou sequência deve ser executada.



Exemplo de como usar uma máquina de estado

Para exemplificar como usar uma máquina de estado, vamos criar o jogo de adivinhação do capítulo anterior, a única diferença é que nós vamos tentar adivinhar um número entre 1 e 100.

  1. Crie um processo em branco e, na guia Design, no grupo Arquivo, selecione Novo > Máquina de estado. A janela Nova máquina de estado será exibida.
    Observação: você também pode adicionar uma atividade State Machine ao painel Designer, para criar uma nova automação de máquina de estado.
  2. No campo Nome, digite um nome para a automação, como "Primeira máquina de estado", deixe o local padrão do projeto em branco ou adicione uma subpasta. Clique em Criar. O painel Designer será atualizado de acordo.
  3. Crie duas variáveis de números inteiros, InitialGuess e RandomNumber. A primeira variável armazena seu palpite, já a segunda armazena o número aleatório.
  4. Adicione uma atividade State ao painel de Designer e conecte-a ao nó Iniciar. Esse é o estado inicial, e ele será usado para gerar um número aleatório.
  5. Clique duas vezes na atividade. Essa atividade State será exibida de forma expandida no painel Designer.
  6. No painel Propriedades, no campo DisplayName, digite Inicialização do número aleatório. Isso permite que você diferencie facilmente os estados.
  7. Na seção Entrada, adicione uma atividade Assign.
  8. No campo Para, adicione a variável RandomNumber.
  9. No campo Value, digite new Random().Next(1,100). Essa expressão vai gerar um número aleatório.
  10. Retorne à exibição principal do projeto e adicione uma nova atividade State.
  11. Conecte-a à atividade adicionada anteriormente.
  12. Clique duas vezes na última atividade State adicionada. Essa atividade será exibida de forma expandida no painel Designer.
  13. No painel Propriedades, no campo DisplayName, digite Número do palpite. Esse estado será usado para solicitar que o usuário adivinhe um número.
  14. Na seção Entrada, adicione uma atividade Input Dialog.
  15. Selecione a Input Dialog e, no painel Propriedades, adicione um Rótulo e Título apropriados para solicitar que o usuário adivinhe um número entre 1 e 100.
  16. No campo Resultado, adicione a variável InitialGuess. Essa variável vai armazenar o palpite do usuário.
  17. Retorne à exibição principal do projeto e crie uma transição que aponta do estado Número do palpite para ele mesmo.
  18. Clique duas vezes na transição. A transição será exibida de forma expandida no painel Designer.
  19. No painel Propriedades, no campo DisplayName, digite Tente um número menor. Essa mensagem será exibida na seta, permitindo que você execute sua automação mais facilmente.
  20. Na seção Condição, digite InitialGuess > RandomNumber. Isso vai verificar se o palpite do usuário é maior que o número aleatório.
  21. Na seção Ação, adicione uma atividade Message Box.
  22. No campo Texto, digite algo semelhante à "O número do seu palpite é muito grande. Tente um número menor.". Essa mensagem será exibida quando o palpite do usuário for maior que o número aleatório.
  23. Retorne à exibição principal do projeto e crie uma transição que aponta do estado Número do palpite para ele mesmo.
  24. Clique duas vezes na transição. A transição será exibida de forma expandida no painel Designer.
  25. No painel Propriedades, no campo DisplayName, digite "Tente um número maior". Essa mensagem será exibida na seta, permitindo que você execute sua automação mais facilmente.
  26. Na seção Condição, digite InitialGuess < RandomNumber. Isso vai verificar se o palpite é menor que o número aleatório.
  27. Na seção Ação, adicione uma atividade Message Box.
  28. No campo Texto, digite algo semelhante à "O número do seu palpite é muito pequeno. Tente um número maior.". Essa mensagem será exibida quando o palpite do usuário for menor que o número aleatório.
  29. Retorne à exibição principal do projeto e adicione uma atividade Final State ao painel Designer.
  30. Conecte uma transição da atividade Guess Number à Final State.
  31. No painel Propriedades, no campo DisplayName, digite "Corrigir palpite".
  32. No campo Condição, digite InitialGuess = RandomNumber. Essa é a condição na qual a automação vai avançar para o estado final e o fim.
  33. Clique duas vezes na atividade Final State. Ela será exibida de forma expandida no painel Designer.
  34. Na seção Entrada, adicione uma atividade Message Box.
  35. No campo Texto, digite algo semelhante a "Parabéns. Você adivinhou corretamente! O número era " + RandomNumber.ToString + "." Essa é a mensagem final que deve ser exibida, quando o usuário acertar o número.

    O projeto final deve parecer com a captura de tela a seguir.



  36. Pressione F5. A automação será executada corretamente.


  • Exemplo de como usar uma máquina de estado

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.