- Introdução
- Configuração e Instalação
- Projetos de automação
- Dependências
- Tipos de fluxos de trabalho
- Fluxo de controle
- Comparação de arquivos
- Melhores Práticas de Automação
- Integração de controle de origem
- Sobre o controle de versões
- Como gerenciar projetos com o TÁS
- Como gerenciar projetos com o SN
- Dif. do fluxo de trabalho
- Depuração
- Geração de logs
- A ferramenta de diagnóstico
- Analisador de Fluxo de Trabalho
- Sobre o Analisador de Fluxo de Trabalho
- STN MG-001 - Convenção de nomenclatura de variáveis
- STN MG-002 - Convenção de nomenclatura de argumentos
- STN MG-004 - Duplicação de Nome de Exibição
- STN MG-005 - Variável substitui variável
- STN MG-006 - Variável substitui argumento
- STN MG-008 - Comprimento de variável excedido
- STN MG-009 - Variáveis Catablema de prefixo
- STN MG-011 - Argumentos Catablema de prefixo
- STN MG-012 - Valores padrão de argumentos
- STN MG-016 - Comprimento do argumento excedido
- ST-NMG-017 - O nome da classe corresponde ao namespace padrão
- SR-DB-002 - Contagem alta de argumentos
- SR-DB-003 - Esvaziar bloco catechu
- SR-DB-007 - Múltiplas camadas Com fluxograma
- ST-DPB-010 - Várias instâncias de [Fluxo de trabalho] ou [Caso de teste]
- SR-DB-020 - Propriedades de saída indefinidas
- SR-DB-021 - Tempo limite embutido em código
- SR-DB-023 - Fluxo de trabalho vazio
- SR-DB-024 - Verificação da atividade Persistente
- SR-DB-025 - Pré-requisito de serialidade de variáveis
- SR-DB-027 - Melhores práticas de persistência
- SR-DB-028 - Pré-requisito de serialidade de argumentos
- ST-USG-005 - Propriedades de atividade codificadas
- SR-US-009 - Variáveis não utilizadas
- SR-US-010 - Dependências não utilizadas
- SR-US-014 - Restrições de pacotes
- ST-USG-017 – Modificador de parâmetro inválido
- SR-US-020 - Mensagens de logue mínimas
- SR-US-024 - Não utilizado e postergado
- SR-US-025 - Uso incorreto do valor salvo
- SR-US-026 - Restrições da atividade
- SR-US-027 - Pacotes necessários
- ST-USG-28 — restringir modelos de invocação de arquivos
- ST-USG-032 — rótulos obrigatórios
- ST-USG-034 — URL do Automation Hub
- Variáveis
- Argumentos
- Namespaces Importados
- Automações codificadas
- Introdução
- Registro de serviços personalizados
- Contextos Antes e Depois
- Gerando código
- Geração de caso de teste codificado a partir de casos de teste manuais
- Integração do OpenAI com fluxos de trabalho codificados
- Solicite um empréstimo com o UiBank
- Geração de filas com fluxos de trabalho codificados e APIs do Orchestrator
- Usando projetos de biblioteca importados em automações codificadas
- Usando autenticação de dois fatores em automações codificadas
- Conexão com MongoDB Atlas com automações codificadas
- Solução de problemas
- Automação assistida baseada em gatilho
- Repo. de Objetos
- A ferramenta ScreenScrapeJavaSupport
- Extensões
- Sobre extensões
- Ferramenta SetupExtensions
- UiPathRemoteRuntime.exe não está sendo executado na sessão remota
- O UiPath Remote Runtime bloqueia a sessão do Citrix de ser fechado
- O UiPath Remote Runtime causa vazamento de memória
- O pacote UiPath.UIAutomation.Activities e as versões do UiPath Remote Runtime não correspondem
- A extensão do UiPath necessária não está instalada na máquina remota
- Configurações de resolução de tela
- Políticas de grupo
- Não é possível se comunicar com o navegador
- A extensão do Chrome é removida automaticamente
- A extensão pode ter sido corrompida
- Verifique se a extensão para o Chrome está instalada e habilitada
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Habilite o Acesso às URLs do arquivo e o Modo Anônimo
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- Lista de extensões para Chrome
- Extensão do Chrome no Mac
- Políticas de grupo
- Não é possível se comunicar com o navegador
- A extensão Edge é removida automaticamente
- A extensão pode ter sido corrompida
- Check if the Extension for Microsoft Edge is installed and enabled
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Enable access to file URLs and InPrivate mode
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- Lista de extensões para Edge
- Extensão para Safari
- Extensão para o Varear Horizonte
- Extensão para Amazon WorkSpaces
- Plug-in do SAP Solution Manager
- Suplemento do Excel
- Teste do Studio
- Solução de problemas
- Sobre a solução de problemas
- Erros de compilação de montagem
- Suporte e limitações do Microsoft Apo-V
- Solução de problemas do Internet Explorer x64
- Problemas do Microsoft Office
- Como identificar elementos de EU em PDF com opções de acessibilidade
- Reparando o suporte da Active Accessibility
- Validation of large Windows-legacy projects takes longer than expected
Guia do usuário do Studio
Compreensão do processo
A decisão entre uma automação para Robôs assistidos ou não assistidos é a primeira decisão importante que impacta como os desenvolvedores criam o código, pois a estrutura em execução geral (gatilhos, interação, gerenciamento de exceções do Robô) é diferente. Alternar para o outro tipo de Robôs posteriormente pode ser complicado.
Quando os Attended Robots fazem sentido
Para processos urgentes, em tempo real e acionados por humanos, como em um call center, um Robô assistido trabalhando lado a lado com um humano pode ser a única opção possível.
Reconsiderando Attended Robots
Nem todos os processos que exigem entrada humana devem usar Attended Robots. Se uma decisão de julgamento for instável, considere dividir o processo em subprocessos menores que podem ser executados não assistidos.
Por exemplo, um subprocesso pode coletar dados e, após a validação humana, um segundo subprocesso continua automaticamente.
Um caso típico seria um processo que requer uma etapa manual em algum momento durante o processo, como verificar a seção de comentários não estruturados de um tíquete e, com base nisso, atribuir o tíquete a determinadas categorias.
Benefícios e Considerações Práticas
De modo geral, escolher um Robô não assistido garante um uso mais eficiente da carga do Robô e maior retorno sobre o investimento, além de melhorar o gerenciamento e acompanhamento das capacidades robóticas.
No entanto, vários fatores afetam essa decisão:
- Attended Robots normalmente são executados apenas durante o horário de trabalho
- Attended Robots mantêm as máquinas e usuários ocupados até que a execução seja concluída
- Tipos de entrada e volumes de transação
- Restrições de tempo e agendamento
- Número de Robôs disponíveis
Documentação do processo – DSD
A documentação do processo guia o trabalho do desenvolvedor e fornece ajuda no rastreamento das solicitações e na manutenção do aplicativo. É claro, podem haver vários outros documentos técnicos, mas um deles é crítico para uma implementação perfeita, chamado DSD (Documento de Especificação de Desenvolvimento).
O Documento de Especificação de Desenvolvimento deve conter os detalhes do processo automatizado e focar em duas categorias principais: Guia de Runtime e Detalhes de Desenvolvimento.
O Guia de Runtime deve conter um diagrama de runtime de alto nível e detalhes sobre a funcionalidade do Robô, incluindo subprocessos, agendamentos, definições de configuração e gerenciamento de arquivos.
Inclua detalhes sobre pré-requisitos, tratamento de erros, retomada do processo, uso do Orchestrator, registro em log, relatórios e gerenciamento de credenciais.
Os Detalhes de desenvolvimento devem incluir pacotes, ambiente de desenvolvimento, níveis de registro em log, informações de controle de origem e componentes do fluxo de trabalho com descrições.
Inclua também componentes reutilizáveis, árvores de invocação, logs personalizados, instantâneos de fluxogramas, níveis de automação e outros detalhes de desenvolvimento.
Desenvolvimento e revisão do código
O Arquiteto de Soluções de RPA é responsável por treinar continuamente os desenvolvedores nas práticas recomendadas. Por isso, revisões frequentes e completas dos códigos são obrigatórias para impor uma altíssima qualidade dos fluxos de trabalho desenvolvidos. Dessa maneira, os desenvolvedores ficam motivados a criar fluxos de trabalho robustos e a seguir o guia de melhores práticas.
Testar
Após cada componente ser criado, realize testes de unidade. Testes detalhados de componentes garantem uma integração mais suave e depuração mais rápida.
Use a pasta Test_Frameworkdo REFramework para arquivos de teste. O arquivo RunAllTests.xaml permite testes automatizados de vários arquivos .xaml . Execute testes fora do horário de expediente em ambientes de teste para otimizar o tempo do desenvolvedor.
A arquitetura da UiPath recomendada inclui ambientes de Desenvolvimento e Teste que permitem testar os processos fora dos sistemas de produção ao vivo.
Algumas vezes, os aplicativos parecem ou se comportam de forma diferente entre os ambientes de Desenvolvimento, Teste ou Produção e medidas adicionais devem ser tomadas, eliminando seletores ou até a execução condicional de algumas atividades.
Use o arquivo UiPath.config ou os ativos do Orchestrator para alternar sinalizadores específicos do ambiente. Defina um parâmetro booleano de modo de teste para controlar o comportamento durante a depuração.
Quando True, a automação segue rotas de teste e não é executada totalmente. Por exemplo, ignore as notificações e use Cancelar em vez de Salvar. Quando False, segue as rotas de produção normais.
Isso permite que você faça modificações e teste-as em processos que funcionam diretamente em sistemas ao vivo.
Versão
Há várias maneiras de projetar a arquitetura e liberar o fluxo, considerando a configuração da infraestrutura, preocupações sobre a segregação de funções, etc.
Neste modelo proposto, os desenvolvedores da UiPath podem criar seus projetos e testá-los em ambientes de Desenvolvimento no Orchestrator. Eles são autorizados a fazer o check-in do projeto para uma unidade gerenciada por um sistema de controle de versão (VCS), como GIT, SVN ou TFS.
A publicação do pacote e disponibilizá-lo para Teste e Produção é o trabalho de uma equipe diferente, como a de TI.
Os caminhos de implantação no Orchestrator foram alterados de seu padrão para as pastas gerenciadas pelo VCS, alterando o valor do Storage.Location no arquivo UiPath.Orchestrator.dll.config da seção Implantação.
O modelo também contém um repositório de componentes reutilizáveis.
Veja abaixo o fluxo de publicação do projeto, passo a passo:
- Os desenvolvedores criam o processo, testam e depuram as partes dele localmente (Studio).
- Após o desenvolvimento da automação ser concluído, o processo será publicado no Orchestrator de Desenvolvimento e testado novamente de ponta a ponta.
- A pasta do projeto é confirmada (não é criado um paco6te) em uma pasta da Biblioteca Mestre (no VCS).
- A equipe de operações de TI/RPA cria o pacote de projeto para o controle de qualidade. Esta etapa é destinada a ser uma medida de segurança adicional: o código-fonte da automação será inspecionado (por uma entidade diferente) antes de ser criado o pacote e executado pelos Robôs. Por exemplo, o processo de empacotamento será armazenado na pasta Pacotes de processo (CQ) no VCS, a partir da qual será implantado para os Robôs de CQ e executado.
- Caso algum problema seja revelado durante os testes, as etapas acima serão repetidas.
- Após todos os testes de CQ serem aprovados, o pacote é enviado para um ambiente de Produção – Pacotes de processo (Prod).
- Quando o processo ficar ao vivo, o pacote do processo será implantado nos Robôs de produção e executado.
O Conteúdo reutilizável é criado e implantado separadamente, como código da UiPath (Biblioteca de Códigos Reutilizáveis) e Invocações (Repositório de invocações).
Fluxos de trabalho com código-fonte são arquivos .xaml que contêm atividades para automatizar processos comuns, como Login no SAP:
As Invocações representam fluxos de trabalho compostos apenas de uma atividade Invoke dos fluxos de trabalho do código mencionados acima.
O painel Fragmento de um desenvolvedor do Studio deve apontar para esse repositório de Invocação para fornecer acesso fácil (arrastar e soltar) ao Conteúdo Reutilizável.
A autoridade de design local responsável pela manutenção do Conteúdo Reutilizável atualiza (devido a uma alteração no processo, por exemplo) os fluxos de trabalho com código. As Invocações permanecem inalteradas.
A vantagem dessa abordagem (em contrário à de trabalhar diretamente com a biblioteca do código-fonte) é que quando uma alteração é feita em um componente reutilizável, todos os projetos em execução também refletem essa alteração, porque eles contêm apenas uma atividade Invoke do fluxo de trabalho alterado.
Monitoramento
Use as atividades Log Message para rastrear a execução do processo para supervisão, diagnóstico e depuração. As mensagens devem incluir IDs de transação e informações de estado para uma identificação precisa.
O registro em log deve ser utilizado:
- No início e no fim de cada fluxo de trabalho;
- Quando os dados estiverem vindo de fontes externas;
- Toda vez que uma exceção for capturada no nível mais alto.
Mensagens são enviadas com a prioridade especificada (por exemplo, Info, Trace, Warning) ao Orchestrator e são salvas no arquivo .nlog local.
Campos de log personalizados
Para disponibilizar dados com facilidade no Kibana para fins de relatórios, o Robô pode sinalizar mensagens de log com valores extras utilizando a atividade Add Log Fields. Por padrão, qualquer saída de log da UiPath já tem vários campos, incluindo message, timestamp, level, processName, fileName e a Identidade do Windows do Robô. Os campos de log são persistentes, portanto, se nós não precisarmos marcar todas as mensagens com uma tag, os campos devem ser removidos imediatamente após o registro em log, usando a atividade Remove Log Fields. Não utilize um nome de campo que já existe. É importante especificar o tipo adequado de argumento na primeira vez que você adicionar o campo. É dessa forma que o Elasticsearch o indexa.