Text.ParseText.RegexParseForFirstOccurrence Text: login_sei TextToFind: $'''[0-9]{11}''' StartingPosition: 0 IgnoreCase: False Match=> login_sei_erro IF login_sei <> login_sei_erro THEN SET login_sei_erro_mensagem TO $'''CPF cadastrado na variável \"login_sei\" deverá ter exatamente 11 caracteres numéricos. Favor não incluir pontos (.) ou hífen (-).''' Display.ShowMessageDialog.ShowMessage Title: $'''Erro no cpf digitado para login''' Message: login_sei_erro_mensagem Icon: Display.Icon.ErrorIcon Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False EXIT Code: 0 ErrorMessage: login_sei_erro_mensagem END WebAutomation.LaunchChrome.LaunchChrome Url: $'''https://www.sei.mg.gov.br/sip/login.php?sigla_orgao_sistema=GOVMG&sigla_sistema=SEI&infra_url=L3NlaS8=''' WindowState: WebAutomation.BrowserWindowState.Maximized ClearCache: False ClearCookies: False WaitForPageToLoadTimeout: 60 Timeout: 60 PiPUserDataFolderMode: WebAutomation.PiPUserDataFolderModeEnum.AutomaticProfile TargetDesktop: $'''{\"DisplayName\":\"Computador local\",\"Route\":{\"ServerType\":\"Local\",\"ServerAddress\":\"\"},\"DesktopType\":\"local\"}''' BrowserInstance=> sei DISABLE WebAutomation.LaunchEdge.LaunchEdge Url: $'''https://www.sei.mg.gov.br/sip/login.php?sigla_orgao_sistema=GOVMG&sigla_sistema=SEI&infra_url=L3NlaS8=''' WindowState: WebAutomation.BrowserWindowState.Maximized ClearCache: False ClearCookies: False WaitForPageToLoadTimeout: 60 Timeout: 60 PiPUserDataFolderMode: WebAutomation.PiPUserDataFolderModeEnum.AutomaticProfile TargetDesktop: $'''{\"DisplayName\":\"Computador local\",\"Route\":{\"ServerType\":\"Local\",\"ServerAddress\":\"\"},\"DesktopType\":\"local\"}''' BrowserInstance=> sei # Aguarda página inicial de login SEI ser carregada. Somente quando textos "Sistema Eletrônico de informações" e "Usuário Bloqueado" aparecerem é que próximas ações serão realizadas. WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Usuário Bloqueado?''') WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { var x = document.getElementsByTagName(\'option\'); for (var i = 0; i < x.length; i++) { if (x[i].text == \'%orgao_sei%\') { return true } } return false }''' Result=> orgao_erro IF orgao_erro = $'''false''' THEN SET orgao_erro_mensagem TO $'''Órgão cadastrado na variável \"orgao_sei\" não disponível na lista de órgãos da página de login SEI. Valor cadastrado para variável deverá ser exatamente igual à existente na lista de órgãos disponíveis na página inicial de login, inclusive com todas as letras maiúsculas.''' Display.ShowMessageDialog.ShowMessage Title: $'''Erro na sigla digitada do Órgão''' Message: orgao_erro_mensagem Icon: Display.Icon.ErrorIcon Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False EXIT Code: 0 ErrorMessage: orgao_erro_mensagem END # Envia teclas para inclusão de login. Informações de login são lidas conforme variável de entrada "login_sei" criado no início do fluxo. WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { usuario = document.getElementById(\"txtUsuario\") usuario.value = \"%login_sei%\" }''' # Envia teclas para inclusão de senha. Informações de senha são lidas conforme variável de entrada "senha_sei" criado no início do fluxo. WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { senha=document.getElementsByName(\"pwdSenha\") senha[0].value=\"%senha_sei%\" senha_id=document.getElementById(\"pwdSenha\") senha_id.type=\"password\" senha_id.value=\"%senha_sei%\" }''' # Executa script Javascript para selecionar órgão de login. Órgão é escolhido conforme variável de entrada "orgao_sei" criado no início do fluxo. WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { var x = document.getElementsByTagName(\'option\'); for (var i = 0; i < x.length; i++) { if (x[i].text == \'%orgao_sei%\') { x[i].selected = true } } }''' WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { acessar=document.getElementById(\"Acessar\") acessar.click() }''' # Aguarda página inicial de SEI ser carregada. Somente quando textos "Controle de Processos" aparecer é que próximas ações serão realizadas. WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Controle de Processos''') WAIT 4 # Envia tecla "Esc" para garantir que qualquer mensagem aberta no início do SEI seja fechada. MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''{Escape}''' DelayBetweenKeystrokes: 150 SendTextAsHardwareKeys: True MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''{Escape}''' DelayBetweenKeystrokes: 150 SendTextAsHardwareKeys: True