Encontrar Fornecedores#
Vamos considerar um exemplo de robô que demonstra a automação da busca por fornecedores.
O projeto do robô consiste em 4 diagramas e 7 arquivos nos formatos xlsx, txt e docx.
Assim, se descrevermos passo a passo, este robô funciona da seguinte maneira:
- Verifica o e-mail e, ao receber uma mensagem (o modelo da qual está definido no arquivo “WorkBodyEmail.txt”), faz uma solicitação para buscar o produto no Yandex.
- Percorre os links do resultado da busca e coleta os E-mails.
- Filtra os links usando os dados do arquivo “BlockEmails.xlsx”.
- Faz o envio para os E-mails especificados, onde o assunto do e-mail é retirado do arquivo “RequestSubjectEmail.txt” e o corpo do e-mail do arquivo “RequestBodyEmail.txt”; como anexos dos e-mails, são incluídos dois arquivos: o primeiro é o pedido do arquivo “RequestWordTemplate.docx”, e o segundo são os dados da empresa do arquivo “CompanyDetails.xlsx”.
O diagrama principal do projeto é assim (para conveniência, os blocos do diagrama estão numerados):
- Bloco “Início” (a partir deste bloco, qualquer diagrama começa).
- Bloco “Processo” permite criar cenários compostos por vários diagramas. A execução do cenário continuará a partir do bloco “Início” do diagrama do projeto especificado. A execução do cenário retornará ao bloco atual e continuará no diagrama atual assim que o bloco “Fim” do diagrama externo for alcançado. Para o bloco “Processo”, é especificada a propriedade “Nome do diagrama” (o nome do arquivo do diagrama onde a execução do cenário continuará).
- Bloco “Pausa” suspende a execução do trabalho do cenário por um tempo especificado. Neste caso, por 10 segundos.
- Bloco “Receber e-mails via POP3” permite receber e-mails usando o protocolo POP3. Para este bloco, as seguintes propriedades são especificadas:
- Servidor (servidor);
- Login (login necessário para autenticação no servidor);
- Senha (senha necessária para autenticação no servidor);
- Tempo de espera (tempo de espera pela resposta do servidor em segundos);
- SSL (se a flag estiver ativada, uma conexão segura é utilizada);
- Número de e-mails (número dos últimos e-mails que serão recebidos do servidor).
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do cenário do robô. Para este bloco, é especificada a propriedade “Valor”. Entre aspas, é indicada uma constante de texto, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô uma mensagem de erro.
- Bloco “Ciclo para cada (Lista)” percorre todos os elementos em uma lista especificada, em cada iteração do ciclo atribui o elemento atual à variável que está especificada na propriedade “Elemento”, e então a execução do cenário continua na saída do Elemento deste bloco (no chamado “corpo do ciclo”). Após percorrer todos os elementos da lista, a execução do cenário continua na saída inferior do bloco. Não se esqueça de conectar a saída do último bloco no corpo do ciclo à entrada deste bloco. Para este bloco, é especificada uma propriedade: “Lista” (lista cujos elementos devem ser percorridos no ciclo).
Importante! Para que o ciclo seja reiniciado, é necessário ir não para o próprio ciclo, mas para o bloco acima dele.
- Bloco “Atribuir valor à variável” define novos valores para uma ou mais variáveis. Neste caso, nas propriedades estão especificados dois valores que devem ser atribuídos a duas variáveis, respectivamente.
- Bloco “Codificar em Base64” permite codificar uma string em Base64. Para este bloco, é especificada uma propriedade: “Texto” (string de entrada).
- Bloco “Verificar a presença de um elemento na lista” realiza uma busca na lista e determina se o elemento procurado está presente na lista ou não. Para este bloco, as seguintes propriedades são especificadas:
- Lista (lista na qual é necessário verificar a presença do elemento procurado);
- Elemento (elemento cujo fato de presença deve ser verificado);
- Tipo de verificação (seleção do tipo de verificação).
- Bloco “Adicionar elemento à lista” adiciona o elemento especificado ao final da lista. Para este bloco, as seguintes propriedades são especificadas:
- Lista (lista à qual é necessário adicionar um novo elemento);
- Elemento (variável que deve ser adicionada à lista).
- Bloco “Dividir texto” divide uma string em substrings com base no símbolo delimitador especificado. Para este bloco, as seguintes propriedades são especificadas:
- Texto (string de entrada);
- Nova linha (se a flag estiver ativada, a divisão será feita por nova linha);
- Remover substrings vazias (se a flag estiver ativada, as linhas vazias serão removidas do resultado);
- Trim (se a flag estiver ativada, cada linha no resultado será trimada).
- Bloco “Condição” verifica a condição especificada para veracidade, após o que a execução do cenário continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[0] == "SherpaRPA". Ou seja, no corpo do e-mail deve haver a palavra-chave "SherpaRPA".
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis no log durante a execução do cenário do robô. Para este bloco, a propriedade “Valor” foi especificada. Entre aspas, uma constante de texto é indicada, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô a mensagem “Não há palavra-chave no e-mail”.
- Bloco “Ciclo” permite repetir uma sequência de ações (blocos) várias vezes e, ao mesmo tempo, contar o número de iterações do ciclo, registrando a quantidade atual em uma variável especial (especificada na propriedade “Ciclo”), que pode ser utilizada em outros blocos. Na primeira entrada no bloco, o valor da variável da propriedade “Ciclo” é igualado ao “Valor Inicial” (neste caso, é igual a 1), e então a execução do cenário continua na direção da saída “Ciclo” deste bloco (no chamado “corpo do ciclo”). Assim que a execução do cenário retornar a este bloco, o valor da variável “Ciclo” aumentará em “Passo” (neste caso, é 1), e novamente ocorrerá a transição para a saída “Ciclo”. Assim que o valor da variável “Ciclo” se tornar maior ou igual ao “Valor Final” (neste caso, é definido pela variável $listbody.Count - 1), a execução do cenário continuará na direção da saída inferior do bloco. Não se esqueça de conectar a saída do último bloco no corpo do ciclo à entrada deste bloco ou de algum dos blocos anteriores.
- Bloco “Processo” permite criar cenários compostos por vários diagramas. A execução do cenário continuará a partir do bloco “Início” do diagrama do projeto especificado. A execução do cenário retornará ao bloco atual e continuará no diagrama atual assim que o bloco “Fim” no diagrama externo for alcançado. Para o bloco “Processo”, a propriedade “Nome do Diagrama” foi especificada (o nome do arquivo do diagrama onde a execução do cenário continuará).
- Bloco “Processo” permite criar cenários compostos por vários diagramas. A execução do cenário continuará a partir do bloco “Início” do diagrama do projeto especificado. A execução do cenário retornará ao bloco atual e continuará no diagrama atual assim que o bloco “Fim” no diagrama externo for alcançado. Para o bloco “Processo”, a propriedade “Nome do Diagrama” foi especificada (o nome do arquivo do diagrama onde a execução do cenário continuará).
- Bloco “Condição” verifica a condição especificada para veracidade, após o que a execução do cenário continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Pedido:". Ou seja, no corpo do e-mail deve haver "Pedido:".
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, foi especificado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada para veracidade, após o que a execução do cenário continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Gerente:". Ou seja, no corpo do e-mail deve haver "Gerente:"
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, foi especificado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada para veracidade, após o que a execução do cenário continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Produto:". Ou seja, no corpo do e-mail deve haver "Produto:"
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, é indicado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Quantidade:". Ou seja, no corpo do e-mail deve haver "Quantidade:".
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, é indicado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Endereço:". Ou seja, no corpo do e-mail deve haver "Endereço:".
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, é indicado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Da empresa:". Ou seja, no corpo do e-mail deve haver "Da empresa:"
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, é indicado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” igual a (==)/ maior que (>)/ menor que (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $listbody[$Index] == "Descrição do produto:". Ou seja, no corpo do e-mail deve haver a palavra-chave "Descrição do produto:".
- Bloco “Atribuir valor à variável” estabelece novos valores para uma ou mais variáveis. Neste caso, nas propriedades, é indicado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Executar expressão” inicia a execução de uma ou mais expressões em uma linguagem compatível com PowerShell.
Diagrama “ProcessCreateWord”
- Bloco “Iniciar” (a partir deste bloco começa qualquer diagrama).
- Bloco “Abrir documento” permite abrir um documento do Word. Para este bloco, são especificadas as seguintes propriedades:
- Usar COM (com a flag ativada, a operação é realizada através do Word instalado);
- Caminho para o arquivo (caminho para o documento do Word que deve ser aberto).
- Bloco “Substituir todas as variáveis no texto (Word)” permite substituir todas as variáveis %variable% em um documento do Word. Para este bloco, as seguintes propriedades são especificadas:
- Link para o Word (link para o processo de processamento do documento do Word. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o Word", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento);
- Link para o documento (link para o documento do Word aberto, no qual o trabalho está atualmente em andamento. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o documento", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento).
- Bloco “Novo arquivo”
- Bloco “Salvar documento” permite salvar um documento do Word. Para este bloco, as seguintes propriedades são especificadas:
- Link para o Word (link para o processo de processamento do documento do Word. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o Word", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento);
- Link para o documento (link para o documento que precisa ser salvo. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o documento", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento);
- Caminho para o arquivo (caminho para o documento do Word).
Importante! Para salvar o documento no mesmo arquivo, deixe o valor vazio. Caso contrário, insira um novo caminho para o arquivo. Se o arquivo especificado existir, ele será sobrescrito. Formatos disponíveis: ".docx", ".pdf".
- Bloco “Fechar documento” permite fechar um documento do Word. Para este bloco, as seguintes propriedades são especificadas:
- Link para o Word (link para o processo de processamento do documento do Word. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o Word", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento);
- Link para o documento (link para o documento que precisa ser fechado. O nome da variável nesta propriedade deve coincidir com o nome da variável na propriedade "Link para o documento", dos blocos "Criar documento" ou "Abrir documento" do grupo Word, que foram usados anteriormente para criar ou abrir este documento).
- Bloco “Fim” (este bloco encerra a execução do script ou retorna o diagrama do subprocesso ao processo principal).
Diagrama “ProcessGetEmails”
- Bloco “Início” (a partir deste bloco, qualquer diagrama começa).
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas, uma constante de texto é indicada, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô “Busca:” e o nome do produto procurado.
- Bloco “Executar expressão” inicia a execução de uma ou mais expressões em uma linguagem compatível com PowerShell. Neste caso, duas expressões são executadas.
- Bloco “Busca Yandex” permite obter uma lista de links em resposta a uma consulta no mecanismo de busca Yandex. Para este bloco, as seguintes propriedades são especificadas:
- Consulta (consulta que deve ser enviada ao mecanismo de busca Yandex);
- Máximo de páginas (número máximo de páginas das quais os links devem ser obtidos em resposta à consulta no mecanismo de busca Yandex);
- Tempo de espera (tempo de espera pela resposta do mecanismo de busca Yandex em milissegundos; se o valor especificado for excedido, a operação é cancelada).
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas, uma constante de texto é indicada, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô uma mensagem de erro.
- Bloco “Reconhecimento de CAPTCHA” realiza o reconhecimento automatizado de blocos CAPTCHA.
- Bloco “Loop para cada (Lista)” itera sobre todos os elementos em uma lista especificada, em cada iteração do loop atribui o elemento atual a uma variável, que é indicada na propriedade “Elemento”, e então a execução do script continua em direção à saída Elemento deste bloco (no chamado “corpo do loop”). Após iterar sobre todos os elementos da lista, a execução do script continua em direção à saída inferior do bloco. Não se esqueça de conectar a saída do último bloco no corpo do loop à entrada deste bloco. Para este bloco, uma propriedade é especificada: “Lista” (lista cujos elementos devem ser iterados no loop).
Importante! Para que o loop seja reiniciado, é necessário ir não para o próprio loop, mas para o bloco acima dele.
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas, é indicada uma constante de texto, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô o URL do produto.
- Bloco “Executar requisição GET” envia uma requisição GET e obtém o código da página retornada. Para este bloco, as seguintes propriedades são especificadas:
- URL (link para a página da Web à qual a requisição GET deve ser enviada);
- Codificação (codificação da página da Web);
- UserAgent (UserAgent que deve ser usado ao acessar a página da Web necessária);
- TLS 12 (com a flag ativada, será utilizado o protocolo seguro TLS 12 ao acessar a página da Web).
- Bloco “Obter lista de substrings por expressão regular” permite obter uma lista de substrings de um texto usando busca por expressão regular. Para este bloco, as seguintes propriedades são especificadas:
- Texto (string de entrada);
- Padrão (expressão regular pela qual a string será dividida);
- Tempo de espera (tempo limite para a conclusão da operação em segundos).
- Bloco “Loop para cada (Lista)” itera sobre todos os elementos em uma lista especificada, em cada iteração do loop atribui o elemento atual a uma variável, que é indicada na propriedade “Elemento”, e então a execução do script continua em direção à saída Elemento deste bloco (no chamado “corpo do loop”). Após iterar sobre todos os elementos da lista, a execução do script continua em direção à saída inferior do bloco. Não se esqueça de conectar a saída do último bloco no corpo do loop à entrada deste bloco. Para este bloco, uma propriedade é especificada: “Lista” (lista cujos elementos devem ser iterados no loop).
Importante! Para que o loop seja reiniciado, é necessário ir não para o próprio loop, mas para o bloco acima dele.
- Bloco “Remover duplicatas na lista” remove da lista todos os elementos duplicados. Para este bloco, uma propriedade é especificada: “Lista” (lista na qual devem ser mantidos apenas elementos únicos, removendo todas as duplicatas).
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua em direção à saída “Sim” (se a condição for atendida) ou em direção à saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição estabelecida é: $ListEmails.Count >= 5. Ou seja, o valor da lista de e-mails deve ser maior ou igual a 5.
- Bloco “Verificar existência de valor” verifica a existência de um valor em toda a tabela ou em uma coluna específica. Para este bloco, as seguintes propriedades são especificadas:
- Tabela (tabela de dados na qual o valor é verificado);
- Valor (valor que é verificado na tabela);
- Coluna (número da coluna na qual o valor é verificado. A numeração começa em 0);
- Tipo de verificação (seleção do tipo de verificação).
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua em direção à saída “Sim” (se a condição for atendida) ou em direção à saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”. Neste caso, a condição estabelecida é: $Result. Ou seja, o resultado foi obtido.
- Bloco “Executar expressão” inicia a execução de uma ou mais expressões em uma linguagem compatível com PowerShell.
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas, é indicada uma constante de texto, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô “Quantidade de Emails encontrados:” e a própria quantidade.
- Bloco “Ciclo para cada (Lista)” percorre todos os elementos em uma lista especificada, em cada iteração do ciclo atribui o elemento atual à variável especificada na propriedade “Elemento”, e então a execução do script continua na saída inferior deste bloco (no chamado “corpo do ciclo”). Após percorrer todos os elementos da lista, a execução do script continua na saída inferior do bloco. Não se esqueça de conectar a saída do último bloco no corpo do ciclo à entrada deste bloco. Para este bloco, uma propriedade é especificada: “Lista” (a lista cujos elementos devem ser percorridos no ciclo).
Importante! Para que o ciclo seja reiniciado, é necessário ir não para o próprio ciclo, mas para o bloco acima dele.
- Bloco “Enviar e-mail” permite enviar um e-mail usando o protocolo POP3. Para este bloco, as seguintes propriedades são especificadas:
- Servidor (servidor);
- Login (login necessário para autenticação no servidor);
- Senha (senha necessária para autenticação no servidor);
- SSL (quando a flag está ativada, uma conexão segura é utilizada);
- E-mail do remetente (E-mail de onde o e-mail será enviado);
- E-mail do destinatário (endereço de e-mail do destinatário para o qual o e-mail deve ser enviado);
- Assunto do e-mail (assunto do e-mail);
- Texto do e-mail (conteúdo do e-mail);
- Marcação HTML (quando a flag está ativada, o conteúdo do e-mail será enviado como uma página HTML e pode conter tags);
- Timeout/Tempo de espera (tempo de espera pela resposta do servidor em segundos).
- Bloco “Log” permite registrar mensagens arbitrárias e/ou valores de variáveis durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas, é especificada uma constante de texto, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô uma mensagem sobre o envio de um e-mail.
- Bloco “Substituir todas as variáveis no texto” realiza a substituição de todas as variáveis %variable% no texto. Para este bloco, uma propriedade “Texto” (string de entrada) é especificada.
- Bloco “Substituir todas as variáveis no texto” realiza a substituição de todas as variáveis %variable% no texto. Para este bloco, uma propriedade “Texto” (string de entrada) é especificada.
- Bloco “Atribuir valor à variável” define novos valores para uma ou mais variáveis. Neste caso, nas propriedades, um valor é especificado que deve ser atribuído a uma variável, respectivamente.
- Bloco “Encontrar linha” realiza a busca em uma tabela comparando com um valor especificado e retorna a primeira linha correspondente. Para este bloco, as seguintes propriedades são especificadas:
- Tabela (tabela de dados onde a busca pela linha é realizada);
- Valor procurado (valor que está sendo buscado na tabela);
- Coluna (número ou nome da coluna onde o valor é verificado, a numeração começa em 0).
- Bloco “Condição” verifica a condição especificada para veracidade, após o que a execução do script continua na saída “Sim” (se a condição for atendida) ou na saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for maior que 5, então a saída é “Sim”, caso contrário – a saída é “Não”. Neste caso, a condição estabelecida é: $RowOrganization == $null. Ou seja, a linha “Organização” deve ser igual a nulo.
- Bloco “Adicionar elemento à lista” adiciona o elemento especificado ao final da lista. Para este bloco, as seguintes propriedades são especificadas:
- Lista (lista à qual o novo elemento deve ser adicionado);
- Elemento (variável que deve ser adicionada à lista).
- Bloco “Adicionar elemento à lista” adiciona o elemento especificado ao final da lista. Para este bloco, as seguintes propriedades são especificadas:
- Lista (lista à qual o novo elemento deve ser adicionado);
- Elemento (variável que deve ser adicionada à lista).
- Bloco “Enviar e-mail” permite enviar um e-mail usando o protocolo POP3. Para este bloco, as seguintes propriedades são especificadas:
- Servidor (servidor);
- Senha (senha necessária para autenticação no servidor);
- SSL (quando a flag está ativada, uma conexão segura é utilizada);
- E-mail do remetente (E-mail de onde o e-mail será enviado);
- E-mail do destinatário (endereço de e-mail do destinatário para o qual o e-mail deve ser enviado);
- Assunto do e-mail (assunto do e-mail);
- Texto do e-mail (conteúdo do e-mail);
- Marcação HTML (quando a flag está ativada, o conteúdo do e-mail será enviado como uma página HTML e pode conter tags);
- Anexos (caminho para o arquivo / Lista de caminhos para arquivos / Dicionário com arquivos que serão anexados ao e-mail (chave - nome, valor - caminho para o arquivo));
- Timeout/Tempo de espera (tempo de espera pela resposta do servidor em segundos).
- Bloco “Executar expressão” inicia a execução de uma ou mais expressões em uma linguagem compatível com PowerShell.
- Bloco “Atribuir valor à variável” define novos valores para uma ou mais variáveis. Neste caso, nas propriedades, está especificado um valor que deve ser atribuído a uma variável, respectivamente.
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, estão especificadas as seguintes propriedades:
- Caminho da pasta (caminho da pasta onde o arquivo necessário está localizado);
- Nome do arquivo (nome do arquivo).
- e 33. Blocos “Fim” (esses blocos encerram a execução do script ou retornam o diagrama do subprocesso ao processo principal).
Diagrama “ProcessSetting”
- Bloco “Início” (a partir deste bloco, qualquer diagrama começa).
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, está especificada uma propriedade: “Nome do arquivo”.
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, está especificada uma propriedade: “Nome do arquivo”.
- Bloco “Ler arquivo” permite ler o conteúdo de um arquivo de texto em uma variável. Para este bloco, estão especificadas as seguintes propriedades:
- Nome do arquivo (nome do arquivo de texto cujo conteúdo deve ser lido);
- Codificação (codificação do arquivo).
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, está especificada uma propriedade: “Nome do arquivo”.
- Bloco “Ler arquivo” permite ler o conteúdo de um arquivo de texto em uma variável. Para este bloco, estão especificadas as seguintes propriedades:
- Nome do arquivo (nome do arquivo de texto cujo conteúdo deve ser lido);
- Codificação (codificação do arquivo).
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, está especificada uma propriedade: “Nome do arquivo”.
- Bloco “Carregar Tabela de Dados” permite carregar uma “Tabela de Dados” de um documento Excel. Para este bloco, estão especificadas as seguintes propriedades:
- Caminho do arquivo (tabela de dados na qual os dados do documento Excel serão carregados);
- Folha (número da folha da qual os dados devem ser lidos para a Tabela de Dados).
- Bloco “Obter caminho para o arquivo” permite descobrir o caminho completo para um arquivo. Para este bloco, está especificada uma propriedade: “Nome do arquivo”.
- Bloco “Carregar Tabela de Dados” permite carregar uma “Tabela de Dados” de um documento Excel. Para este bloco, estão especificadas as seguintes propriedades:
- Caminho do arquivo (tabela de dados na qual os dados do documento Excel serão carregados);
- Folha (número da folha da qual os dados devem ser lidos para a Tabela de Dados).
- Bloco “Fim” (este bloco encerra a execução do script ou retorna o diagrama do subprocesso ao processo principal).