/# O loop abaixo realiza todas as ações para cada linha da planilha. Caso o texto 'NÃO ENVIADA' na coluna notificação, ele fará: - Elaboração do e-mail; -Download do Parecer Final e do e-mail e, upload na Plataforma Digital, quando o status for aprovado. - Download do e-mail e upload na Plataforma Digital, quando o status for reprovado.#/ LOOP WHILE (linha_planilha) <= (linha_livre - 1) Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_empreendedor StartRow: linha_planilha ReadAsText: False CellValue=> empreendedor Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_nome_projeto StartRow: linha_planilha ReadAsText: False CellValue=> titulo_projeto Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_processo_sei StartRow: linha_planilha ReadAsText: False CellValue=> processo_sei Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_status StartRow: linha_planilha ReadAsText: False CellValue=> status_projeto Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_reprovacao StartRow: linha_planilha ReadAsText: False CellValue=> motivos_reprovacao Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_notificacao StartRow: linha_planilha ReadAsText: False CellValue=> notificacao Excel.ReadFromExcel.ReadCell Instance: excel StartColumn: coluna_robo StartRow: linha_planilha ReadAsText: False CellValue=> status_planilha IF notificacao = $'''Não enviada''' THEN IF status_projeto = $'''Aprovado''' THEN WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 91cce99462\'']['Input text \'txtPesquisaRapida\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 1 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''%processo_sei%{Return}''' DelayBetweenKeystrokes: 20 SendTextAsHardwareKeys: False WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Consultar Andamento''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 3bdf4e4d69\'']['Image \'Pesquisar no Processo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Pesquisar no Processo''') WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { try { // Localiza o iframe na página principal var iframe = document.querySelector(\'iframe[id=\"ifrVisualizacao\"]\'); // Verifica se o iframe foi encontrado if (!iframe) { return \"iframe não encontrado na página.\"; } // Aguarda alguns segundos para garantir que o conteúdo do iframe tenha sido carregado setTimeout(function() { try { // Acessa o conteúdo do iframe var iframeDocument = iframe.contentWindow.document; // Verifica se o iframeDocument está acessível if (!iframeDocument) { console.log(\"Não foi possível acessar o conteúdo do iframe.\"); return; } // Seleciona o botão de escolha dentro do iframe, se necessário var botao = iframeDocument.querySelector(\'button[type=\"button\"][class=\"ms-choice\"]\'); if (botao) { console.log(\"Botão encontrado no iframe.\"); } else { console.log(\"Botão não encontrado.\"); } // Seleciona o checkbox dentro do iframe pelo valor var checkbox = iframeDocument.querySelector(\'input[type=\"checkbox\"][value=\"656\"]\'); if (checkbox) { // Simula um clique no checkbox var clickEvent = new MouseEvent(\'click\', { view: window, bubbles: true, cancelable: true }); checkbox.dispatchEvent(clickEvent); console.log(\"Clique no checkbox com valor \'656\' enviado com sucesso dentro do iframe.\"); } else { console.log(\"Checkbox com valor \'656\' não encontrado dentro do iframe.\"); } } catch (error) { console.error(\"Erro ao acessar o conteúdo do iframe: \", error); } }, 5000); // Aguarda 5 segundos antes de tentar acessar o iframe (ajuste conforme necessário) } catch (error) { console.error(\"Erro ao executar o script: \", error.message); } } ''' WAIT 5 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 62a651dcfd\'']['Input submit \'Pesquisar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 # O loop abaixo aguarda que a página da Web seja carregada completamente. LOOP loop_aguardar FROM 1 TO 1000 STEP 1 IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''Ver Critérios de Pesquisa''') THEN SET pagina TO $'''OK''' END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') THEN SET pagina TO $'''OK''' END IF Contains(pagina, $'''OK''', False) THEN EXIT LOOP END END # A ações abaixo fazem o download do último/único Parecer Final. IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') THEN WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Image \'Gerar Arquivo PDF do Documento\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Gerar Arquivo PDF''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Button \'Gerar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 10 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 2ab17e6e72\'']['Button \'Fechar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.LastModified SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> doc_pf Pdf.ExtractTextFromPDF.ExtractText PDFFile: doc_pf[0] DetectLayout: False ExtractedText=> texto_parecer Text.CropText.CropTextAfterFlag Text: texto_parecer FromFlag: $'''Referência: Processo''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $'''SEI nº ''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextBeforeFlag Text: numero_doc_parecer ToFlag: $'''Parecer''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.Trim Text: numero_doc_parecer TrimOption: Text.TrimOption.Both TrimmedText=> numero_doc_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Horizonte''' ToFlag: $'''PARECER''' IgnoreCase: False CroppedText=> tipo_parecer Text.CropText.CropTextAfterFlag Text: tipo_parecer FromFlag: $'''.''' IgnoreCase: False CroppedText=> tipo_parecer Text.Trim Text: tipo_parecer TrimOption: Text.TrimOption.Both TrimmedText=> tipo_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Protocolo: ''' ToFlag: $'''Área''' IgnoreCase: False CroppedText=> protocolo Text.Trim Text: protocolo TrimOption: Text.TrimOption.Both TrimmedText=> protocolo Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''execução até''' ToFlag: $'''.''' IgnoreCase: False CroppedText=> prazo Text.Trim Text: prazo TrimOption: Text.TrimOption.Both TrimmedText=> prazo WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... a37674985a\'']['Image \'Controle de Processos\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''Ver Critérios de Pesquisa''') THEN WebAutomation.GetDetailsOfWebPage BrowserInstance: sei DetailsType: WebAutomation.DetailsType.Text Details=> texto_pesquisa Text.CropText.CropTextAfterFlag Text: texto_pesquisa FromFlag: $'''resultados''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $''')''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.SplitText.Split Text: numero_doc_parecer StandardDelimiter: Text.StandardDelimiter.NewLine DelimiterTimes: 1 Result=> numero_doc_parecer WAIT 1 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 125ca1c8ca\'']['Input text \'txtPesquisaRapida\' 2'] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''%numero_doc_parecer[0]%{Return}''' DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Image \'Gerar Arquivo PDF do Documento\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Gerar Arquivo PDF''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Button \'Gerar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 10 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 2ab17e6e72\'']['Button \'Fechar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.LastModified SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> doc_pf Pdf.ExtractTextFromPDF.ExtractText PDFFile: doc_pf[0] DetectLayout: False ExtractedText=> texto_parecer Text.CropText.CropTextAfterFlag Text: texto_parecer FromFlag: $'''Referência: Processo''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $'''SEI nº ''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextBeforeFlag Text: numero_doc_parecer ToFlag: $'''Parecer''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.Trim Text: numero_doc_parecer TrimOption: Text.TrimOption.Both TrimmedText=> numero_doc_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Horizonte''' ToFlag: $'''PARECER''' IgnoreCase: False CroppedText=> tipo_parecer Text.CropText.CropTextAfterFlag Text: tipo_parecer FromFlag: $'''.''' IgnoreCase: False CroppedText=> tipo_parecer Text.Trim Text: tipo_parecer TrimOption: Text.TrimOption.Both TrimmedText=> tipo_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Protocolo: ''' ToFlag: $'''Área''' IgnoreCase: False CroppedText=> protocolo Text.Trim Text: protocolo TrimOption: Text.TrimOption.Both TrimmedText=> protocolo Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''execução até''' ToFlag: $'''.''' IgnoreCase: False CroppedText=> prazo Text.Trim Text: prazo TrimOption: Text.TrimOption.Both TrimmedText=> prazo WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... a37674985a\'']['Image \'Controle de Processos\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 END WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/6\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Projetos \"Execução\"''') WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Filtrar:''') WebAutomation.PopulateTextField.PopulateTextFieldUsePhysicalKeyboard BrowserInstance: plataforma Control: appmask['Web Page \'http://200.198.28.211/incentivo/projetos/5\'']['Input search'] Text: protocolo Mode: WebAutomation.PopulateTextMode.Replace UnfocusAfterPopulate: True WaitForPageToLoadTimeout: 60 WAIT 1 IF (WebAutomation.IfWebPageContains.WebPageDoesNotContainText BrowserInstance: plataforma Text: $'''Não foram encontrados resultados''') THEN WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com title=\"Assumir\" e class=\"tip\" const assumirLink = document.querySelector(\'a[title=\"Assumir\"].tip\'); // Verifica se o elemento foi encontrado if (assumirLink) { // Simula um clique no elemento assumirLink.click(); console.log(\'Link clicado com sucesso!\'); } else { console.error(\'Elemento com title=\"Assumir\" e class=\"tip\" não encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Você assumiu a análise do projeto''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/assumidos\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona todos os elementos com title=\"Ver\" e class=\"tip\" const assumirLinks = document.querySelectorAll(\'a[title=\"Ver\"].tip\'); // Itera sobre cada elemento e clica if (assumirLinks.length > 0) { assumirLinks.forEach(link => link.click()); console.log(\'Todos os links foram clicados com sucesso!\'); } else { console.error(\'Nenhum elemento com title=\"Ver\" e class=\"tip\" foi encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Adicionar Ocorrência''') CALL buscar_email CALL enviar_email # O fluxo abaixo mescla os arquivos PDF Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.CreationTime SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> pdfs Pdf.MergeFiles PDFFiles: pdfs MergedPDFPath: $'''%pasta_download%\\parecer_email.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix PasswordDelimiter: $''',''' MergedPDF=> doc_pf WAIT 5 # O fluxo abaixo faz o upload na Plataforma Digital WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com ID \"ocorrenciaprojeto_id\" não encontrado.\'); } }''' WAIT 1 # O código abaixo preenche o campo detalhamento, no momento de realizar o upload do PF. WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\'']['Text area \'descricao\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: processo_sei DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT 1 # O código abaixo preenche o prazo, no momento de realizar o upload do PF. WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\' 2']['Input text \'prazo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: prazo DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT 1 WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\'']['Input file \'arquivo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 1 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: $'''%doc_pf%{Return}''' DelayBetweenKeystrokes: 60 SendTextAsHardwareKeys: False WAIT 1 **REGION Confirmação de dados Display.ShowMessageDialog.ShowMessage Title: $'''VERIFICAÇÃO DO FLUXO''' Message: $'''Confira se o Parecer Final e as informações estão corretas.''' Icon: Display.Icon.Warning Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False WAIT 5 WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\' 2']['Button \'Atualizar ocorrência\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''foi adicionada ao Projeto com sucesso''') **ENDREGION WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/assumidos\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com title=\"Revogar\" e class=\"tip\" const revogarLink = document.querySelector(\'a[title=\"Revogar\"].tip\'); // Verifica se o elemento foi encontrado if (revogarLink) { // Simula um clique no elemento revogarLink.click(); console.log(\'Link clicado com sucesso!\'); } else { console.error(\'Elemento com title=\"Revogar\" e class=\"tip\" não encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Você revogou a análise do projeto''') DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateOnly CurrentDateTime=> data_hoje Text.ConvertDateTimeToText.FromDateTime DateTime: data_hoje StandardFormat: Text.WellKnownDateTimeFormat.ShortDate Result=> data_hoje Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Upload do PF pelo PowerAutomate em %data_hoje%''' Column: coluna_robo Row: linha_planilha Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Enviada''' Column: coluna_notificacao Row: linha_planilha Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.NoSort SortDescending1: False SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files File.Delete Files: Files END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: plataforma Text: $'''Não foram encontrados resultados''') THEN WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/5\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Filtrar:''') WebAutomation.PopulateTextField.PopulateTextFieldUsePhysicalKeyboard BrowserInstance: plataforma Control: appmask['Web Page \'http://200.198.28.211/incentivo/projetos/5\'']['Input search'] Text: protocolo Mode: WebAutomation.PopulateTextMode.Replace UnfocusAfterPopulate: True WaitForPageToLoadTimeout: 60 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com title=\"Assumir\" e class=\"tip\" const assumirLink = document.querySelector(\'a[title=\"Assumir\"].tip\'); // Verifica se o elemento foi encontrado if (assumirLink) { // Simula um clique no elemento assumirLink.click(); console.log(\'Link clicado com sucesso!\'); } else { console.error(\'Elemento com title=\"Assumir\" e class=\"tip\" não encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Você assumiu a análise do projeto''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/assumidos\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona todos os elementos com title=\"Ver\" e class=\"tip\" const assumirLinks = document.querySelectorAll(\'a[title=\"Ver\"].tip\'); // Itera sobre cada elemento e clica if (assumirLinks.length > 0) { assumirLinks.forEach(link => link.click()); console.log(\'Todos os links foram clicados com sucesso!\'); } else { console.error(\'Nenhum elemento com title=\"Ver\" e class=\"tip\" foi encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Adicionar Ocorrência''') CALL buscar_email CALL enviar_email # O fluxo abaixo mescla os arquivos PDF Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.CreationTime SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> pdfs Pdf.MergeFiles PDFFiles: pdfs MergedPDFPath: $'''%pasta_download%\\parecer_email.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix PasswordDelimiter: $''',''' MergedPDF=> doc_pf WAIT 5 # O fluxo abaixo faz o upload na Plataforma Digital WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com ID \"ocorrenciaprojeto_id\" não encontrado.\'); } }''' WAIT 1 # O código abaixo preenche o campo detalhamento, no momento de realizar o upload do PF. WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\'']['Text area \'descricao\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: processo_sei DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT 1 # O código abaixo preenche o prazo, no momento de realizar o upload do PF. WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\' 2']['Input text \'prazo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: prazo DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT 1 WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\'']['Input file \'arquivo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 1 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: plataforma TextToSend: $'''%doc_pf%{Return}''' DelayBetweenKeystrokes: 60 SendTextAsHardwareKeys: False WAIT 1 **REGION Confirmação dos dados Display.ShowMessageDialog.ShowMessage Title: $'''VERIFICAÇÃO DO FLUXO''' Message: $'''Confira se o Parecer Final e as informações estão corretas.''' Icon: Display.Icon.Warning Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False WAIT 5 WebAutomation.Click.Click BrowserInstance: plataforma Control: appmask['Web Page \'h ... ocorrencia\' 2']['Button \'Atualizar ocorrência\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''foi adicionada ao Projeto com sucesso''') **ENDREGION WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/assumidos\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o elemento com title=\"Revogar\" e class=\"tip\" const revogarLink = document.querySelector(\'a[title=\"Revogar\"].tip\'); // Verifica se o elemento foi encontrado if (revogarLink) { // Simula um clique no elemento revogarLink.click(); console.log(\'Link clicado com sucesso!\'); } else { console.error(\'Elemento com title=\"Revogar\" e class=\"tip\" não encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Você revogou a análise do projeto''') DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateOnly CurrentDateTime=> data_hoje Text.ConvertDateTimeToText.FromDateTime DateTime: data_hoje StandardFormat: Text.WellKnownDateTimeFormat.ShortDate Result=> data_hoje Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Upload do PF pelo PowerAutomate em %data_hoje%''' Column: coluna_robo Row: linha_planilha Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.NoSort SortDescending1: False SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files File.Delete Files: Files END END IF status_projeto = $'''Reprovado''' THEN WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 91cce99462\'']['Input text \'txtPesquisaRapida\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 1 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''%processo_sei%{Return}''' DelayBetweenKeystrokes: 20 SendTextAsHardwareKeys: False WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Consultar Andamento''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 3bdf4e4d69\'']['Image \'Pesquisar no Processo\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Pesquisar no Processo''') WebAutomation.ExecuteJavascript BrowserInstance: sei Javascript: $'''function ExecuteScript() { try { // Localiza o iframe na página principal var iframe = document.querySelector(\'iframe[id=\"ifrVisualizacao\"]\'); // Verifica se o iframe foi encontrado if (!iframe) { return \"iframe não encontrado na página.\"; } // Aguarda alguns segundos para garantir que o conteúdo do iframe tenha sido carregado setTimeout(function() { try { // Acessa o conteúdo do iframe var iframeDocument = iframe.contentWindow.document; // Verifica se o iframeDocument está acessível if (!iframeDocument) { console.log(\"Não foi possível acessar o conteúdo do iframe.\"); return; } // Seleciona o botão de escolha dentro do iframe, se necessário var botao = iframeDocument.querySelector(\'button[type=\"button\"][class=\"ms-choice\"]\'); if (botao) { console.log(\"Botão encontrado no iframe.\"); } else { console.log(\"Botão não encontrado.\"); } // Seleciona o checkbox dentro do iframe pelo valor var checkbox = iframeDocument.querySelector(\'input[type=\"checkbox\"][value=\"656\"]\'); if (checkbox) { // Simula um clique no checkbox var clickEvent = new MouseEvent(\'click\', { view: window, bubbles: true, cancelable: true }); checkbox.dispatchEvent(clickEvent); console.log(\"Clique no checkbox com valor \'656\' enviado com sucesso dentro do iframe.\"); } else { console.log(\"Checkbox com valor \'656\' não encontrado dentro do iframe.\"); } } catch (error) { console.error(\"Erro ao acessar o conteúdo do iframe: \", error); } }, 5000); // Aguarda 5 segundos antes de tentar acessar o iframe (ajuste conforme necessário) } catch (error) { console.error(\"Erro ao executar o script: \", error.message); } } ''' WAIT 5 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 62a651dcfd\'']['Input submit \'Pesquisar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 # O loop abaixo aguarda que a página da Web seja carregada completamente. LOOP loop_aguardar FROM 1 TO 1000 STEP 1 IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''Ver Critérios de Pesquisa''') THEN SET pagina TO $'''OK''' END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') THEN SET pagina TO $'''OK''' END IF Contains(pagina, $'''OK''', False) THEN EXIT LOOP END END # A ações abaixo fazem o download do último/único Parecer Final. IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') THEN WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Image \'Gerar Arquivo PDF do Documento\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Gerar Arquivo PDF''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Button \'Gerar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 10 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 2ab17e6e72\'']['Button \'Fechar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.LastModified SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> doc_pf Pdf.ExtractTextFromPDF.ExtractText PDFFile: doc_pf[0] DetectLayout: False ExtractedText=> texto_parecer Text.CropText.CropTextAfterFlag Text: texto_parecer FromFlag: $'''Referência: Processo''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $'''SEI nº ''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextBeforeFlag Text: numero_doc_parecer ToFlag: $'''Parecer''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.Trim Text: numero_doc_parecer TrimOption: Text.TrimOption.Both TrimmedText=> numero_doc_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Horizonte''' ToFlag: $'''PARECER''' IgnoreCase: False CroppedText=> tipo_parecer Text.CropText.CropTextAfterFlag Text: tipo_parecer FromFlag: $'''.''' IgnoreCase: False CroppedText=> tipo_parecer Text.Trim Text: tipo_parecer TrimOption: Text.TrimOption.Both TrimmedText=> tipo_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Protocolo: ''' ToFlag: $'''Área''' IgnoreCase: False CroppedText=> protocolo Text.Trim Text: protocolo TrimOption: Text.TrimOption.Both TrimmedText=> protocolo Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''execução até''' ToFlag: $'''.''' IgnoreCase: False CroppedText=> prazo Text.Trim Text: prazo TrimOption: Text.TrimOption.Both TrimmedText=> prazo WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... a37674985a\'']['Image \'Controle de Processos\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: sei Text: $'''Ver Critérios de Pesquisa''') THEN WebAutomation.GetDetailsOfWebPage BrowserInstance: sei DetailsType: WebAutomation.DetailsType.Text Details=> texto_pesquisa Text.CropText.CropTextAfterFlag Text: texto_pesquisa FromFlag: $'''resultados''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $''')''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.SplitText.Split Text: numero_doc_parecer StandardDelimiter: Text.StandardDelimiter.NewLine DelimiterTimes: 1 Result=> numero_doc_parecer WAIT 1 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 125ca1c8ca\'']['Input text \'txtPesquisaRapida\' 2'] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 MouseAndKeyboard.SendKeys.FocusAndSendKeysByInstanceOrHandle WindowInstance: sei TextToSend: $'''%numero_doc_parecer[0]%{Return}''' DelayBetweenKeystrokes: 10 SendTextAsHardwareKeys: False WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''PEDIDO DE READEQUAÇÃO E/OU PRORROGAÇÃO DE EXECUÇÃO DO PROJETO''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Image \'Gerar Arquivo PDF do Documento\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: sei Text: $'''Gerar Arquivo PDF''') WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... cbdff4a274\'']['Button \'Gerar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 WAIT 10 WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... 2ab17e6e72\'']['Button \'Fechar\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.LastModified SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> doc_pf Pdf.ExtractTextFromPDF.ExtractText PDFFile: doc_pf[0] DetectLayout: False ExtractedText=> texto_parecer Text.CropText.CropTextAfterFlag Text: texto_parecer FromFlag: $'''Referência: Processo''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextAfterFlag Text: numero_doc_parecer FromFlag: $'''SEI nº ''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.CropText.CropTextBeforeFlag Text: numero_doc_parecer ToFlag: $'''Parecer''' IgnoreCase: False CroppedText=> numero_doc_parecer Text.Trim Text: numero_doc_parecer TrimOption: Text.TrimOption.Both TrimmedText=> numero_doc_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Horizonte''' ToFlag: $'''PARECER''' IgnoreCase: False CroppedText=> tipo_parecer Text.CropText.CropTextAfterFlag Text: tipo_parecer FromFlag: $'''.''' IgnoreCase: False CroppedText=> tipo_parecer Text.Trim Text: tipo_parecer TrimOption: Text.TrimOption.Both TrimmedText=> tipo_parecer Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''Protocolo: ''' ToFlag: $'''Área''' IgnoreCase: False CroppedText=> protocolo Text.Trim Text: protocolo TrimOption: Text.TrimOption.Both TrimmedText=> protocolo Text.CropText.CropTextBetweenFlags Text: texto_parecer FromFlag: $'''execução até''' ToFlag: $'''.''' IgnoreCase: False CroppedText=> prazo Text.Trim Text: prazo TrimOption: Text.TrimOption.Both TrimmedText=> prazo WebAutomation.Click.Click BrowserInstance: sei Control: appmask['Web Page \'h ... a37674985a\'']['Image \'Controle de Processos\''] ClickType: WebAutomation.ClickType.LeftClick MouseClick: True WaitForPageToLoadTimeout: 60 MousePositionRelativeToElement: WebAutomation.RectangleEdgePoint.MiddleCenter OffsetX: 0 OffsetY: 0 END WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/6\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Projetos \"Execução\"''') WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Filtrar:''') WebAutomation.PopulateTextField.PopulateTextFieldUsePhysicalKeyboard BrowserInstance: plataforma Control: appmask['Web Page \'http://200.198.28.211/incentivo/projetos/5\'']['Input search'] Text: protocolo Mode: WebAutomation.PopulateTextMode.Replace UnfocusAfterPopulate: True WaitForPageToLoadTimeout: 60 WAIT 1 IF (WebAutomation.IfWebPageContains.WebPageDoesNotContainText BrowserInstance: plataforma Text: $'''Não foram encontrados resultados''') THEN WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona todos os elementos com title=\"Ver\" e class=\"tip\" const assumirLinks = document.querySelectorAll(\'a[title=\"Ver\"].tip\'); // Itera sobre cada elemento e clica if (assumirLinks.length > 0) { assumirLinks.forEach(link => link.click()); console.log(\'Todos os links foram clicados com sucesso!\'); } else { console.error(\'Nenhum elemento com title=\"Ver\" e class=\"tip\" foi encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Adicionar Ocorrência''') CALL buscar_email CALL enviar_email DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateOnly CurrentDateTime=> data_hoje Text.ConvertDateTimeToText.FromDateTime DateTime: data_hoje StandardFormat: Text.WellKnownDateTimeFormat.ShortDate Result=> data_hoje Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Notificação enviada pelo PowerAutomate em %data_hoje%''' Column: coluna_robo Row: linha_planilha Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Enviada''' Column: coluna_notificacao Row: linha_planilha Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.NoSort SortDescending1: False SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files File.Delete Files: Files END IF (WebAutomation.IfWebPageContains.WebPageContainsText BrowserInstance: plataforma Text: $'''Não foram encontrados resultados''') THEN WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona o link pelo seu href const link = document.querySelector(\'a[href=\"http://200.198.28.211/incentivo/projetos/5\"]\'); // Verifica se o link foi encontrado e simula o clique if (link) { link.click(); } else { console.log(\"Link não encontrado.\"); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Filtrar:''') WebAutomation.PopulateTextField.PopulateTextFieldUsePhysicalKeyboard BrowserInstance: plataforma Control: appmask['Web Page \'http://200.198.28.211/incentivo/projetos/5\'']['Input search'] Text: protocolo Mode: WebAutomation.PopulateTextMode.Replace UnfocusAfterPopulate: True WaitForPageToLoadTimeout: 60 WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Mostrando de 1 até 1 de 1 registros''') WebAutomation.ExecuteJavascript BrowserInstance: plataforma Javascript: $'''function ExecuteScript() { // Seleciona todos os elementos com title=\"Ver\" e class=\"tip\" const assumirLinks = document.querySelectorAll(\'a[title=\"Ver\"].tip\'); // Itera sobre cada elemento e clica if (assumirLinks.length > 0) { assumirLinks.forEach(link => link.click()); console.log(\'Todos os links foram clicados com sucesso!\'); } else { console.error(\'Nenhum elemento com title=\"Ver\" e class=\"tip\" foi encontrado.\'); } }''' WAIT (WebAutomation.WaitForWebPageContent.WebPageToContainText BrowserInstance: plataforma Text: $'''Adicionar Ocorrência''') CALL buscar_email CALL enviar_email DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateOnly CurrentDateTime=> data_hoje Text.ConvertDateTimeToText.FromDateTime DateTime: data_hoje StandardFormat: Text.WellKnownDateTimeFormat.ShortDate Result=> data_hoje Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Notificação enviada pelo PowerAutomate em %data_hoje%''' Column: coluna_robo Row: linha_planilha Excel.WriteToExcel.WriteCell Instance: excel Value: $'''Enviada''' Column: coluna_notificacao Row: linha_planilha Folder.GetFiles Folder: pasta_download FileFilter: $'''*.pdf''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.NoSort SortDescending1: False SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files File.Delete Files: Files END END END Variables.IncreaseVariable Value: linha_planilha IncrementValue: 1 Excel.SaveExcel.Save Instance: excel END Display.ShowMessageDialog.ShowMessage Title: $'''Processo finalizado!''' Message: $'''Para pedidos aprovados: o e-mail foi encaminhado via SEI! e o upload do Parecer Final+E-mail foi realizado na Plataforma Digital. Para pedidos reprovados: o e-mail foi encaminhado via SEI!.''' Icon: Display.Icon.None Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False # [ControlRepository][PowerAutomateDesktop] { "ControlRepositorySymbols": [ { "IgnoreImagesOnSerialization": false, "Repository": "{\r\n \"Screens\": [\r\n {\r\n \"Controls\": [\r\n {\r\n \"AutomationProtocol\": \"uia3\",\r\n \"ScreenShot\": null,\r\n \"ElementTypeName\": \"Input text\",\r\n \"InstanceId\": \"345c5511-1086-420f-944f-0e11ae3530d9\",\r\n \"Name\": \"Input text 'txtPesquisaRapida'\",\r\n \"SelectorCount\": 1,\r\n \"Selectors\": [\r\n {\r\n \"CustomSelector\": null,\r\n \"Elements\": [\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Body 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... sso\\\"); Aguardando resposta para prosseguir'\",\r\n \"Tag\": \"body\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"vh-100 vw-100 d-flex flex-column m-0 border-0\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraAreaGlobal\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... = document.getElementById(\\\"divTabelaProcesso\\\");'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \" navbar navbar-expand-md infraBarraNavegacao infraCorBarraSistema p-0\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"navInfraBarraNavegacao\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Navigation 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... dos Santos (08605518650/SEJUSP) Configurações Sair'\",\r\n \"Tag\": \"nav\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"flex-column w-100 h-100 infraBarraSistema\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraBarraSistema\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... dos Santos (08605518650/SEJUSP) Configurações Sair'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"navbar m-0 p-0 infraCorBarraSistema collapse navbar-collapse align-self-center infraBarraSistemaPadrao\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraBarraSistemaPadrao\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'SEJUSP/DSP Controle de Processos Novidades Raphael Pereira dos Santos (08605518650/SEJUSP) Configurações Sair'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"navbar-nav flex-grow-1 justify-content-end infraBarraSistemaPadraoD p-3 p-md-0\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraBarraSistemaPadraoD\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'SEJUSP/DSP Controle de Processos Novidades Raphael Pereira dos Santos (08605518650/SEJUSP) Configurações Sair'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"nav-item px-1 media d-flex py-md-0 \"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Action\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"https://www.sei.mg.gov.br/sei/controlador.php?acao=protocolo_pesquisa_rapida&infra_sistema=100000100&infra_unidade_atual=110001401&infra_hash=c1b2ec46a72cf9f13e413cca351d6d39bbe902d662cac09cf5160a0d9a9afef6\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"form-inline align-self-center w-100\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"frmProtocoloPesquisaRapida\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Method\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"post\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Name\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Form 'frmProtocoloPesquisaRapida'\",\r\n \"Tag\": \"form\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"input-group\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Checked\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"false\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"form-control\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Disabled\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"false\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"FormAction\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"FormMethod\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"txtPesquisaRapida\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Max\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Min\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Name\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"txtPesquisaRapida\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"ReadOnly\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"false\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Required\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"false\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Src\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Step\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Type\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"text\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Value\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": false,\r\n \"Name\": \"Input text 'txtPesquisaRapida'\",\r\n \"Tag\": \"input\"\r\n }\r\n ],\r\n \"Ignore\": false,\r\n \"ImageSelector\": null,\r\n \"IsCustom\": false,\r\n \"IsImageBased\": false,\r\n \"IsWindowsInstance\": false,\r\n \"Name\": \"Default Selector\",\r\n \"Properties\": []\r\n }\r\n ],\r\n \"Tag\": \"input\",\r\n \"ScreenshotPath\": \"controlRepo-screenshots\\\\e07fc43b-a2b5-4032-86d6-ff9d18755dd6.png\"\r\n }\r\n ],\r\n \"Handle\": {\r\n \"value\": 0\r\n },\r\n \"ProcessName\": null,\r\n \"ScreenShot\": null,\r\n \"ElementTypeName\": \"Web Page\",\r\n \"InstanceId\": \"ebf9c697-46c1-4247-922f-aba9466d8457\",\r\n \"Name\": \"Web Page 'h ... 91cce99462'\",\r\n \"SelectorCount\": 1,\r\n \"Selectors\": [\r\n {\r\n \"CustomSelector\": null,\r\n \"Elements\": [\r\n {\r\n \"Attributes\": [],\r\n \"CustomValue\": \"domcontainer\",\r\n \"Ignore\": false,\r\n \"Name\": \"Web Page 'https://www.sei.mg.gov.br/sei/controlador.php?acao=procedimento_controlar&acao_origem=principal&acao_retorno=principal&inicializando=1&infra_sistema=100000100&infra_unidade_atual=110001401&infra_hash=1d67ac92e9c7e1d8ed73fb574f1a0d2338eb271e890cc3a5c188b791cce99462'\",\r\n \"Tag\": \"domcontainer\"\r\n }\r\n ],\r\n \"Ignore\": false,\r\n \"ImageSelector\": null,\r\n \"IsCustom\": false,\r\n \"IsImageBased\": false,\r\n \"IsWindowsInstance\": false,\r\n \"Name\": \"Default Selector\",\r\n \"Properties\": []\r\n }\r\n ],\r\n \"Tag\": \"domcontainer\",\r\n \"ScreenshotPath\": \"controlRepo-screenshots\\\\a922b119-3975-474d-a709-108216096bdc.png\"\r\n },\r\n {\r\n \"Controls\": [\r\n {\r\n \"AutomationProtocol\": \"uia3\",\r\n \"ScreenShot\": null,\r\n \"ElementTypeName\": \"Image\",\r\n \"InstanceId\": \"16d03187-ba5c-4ab9-985b-48db37010d3b\",\r\n \"Name\": \"Image 'Pesquisar no Processo'\",\r\n \"SelectorCount\": 1,\r\n \"Selectors\": [\r\n {\r\n \"CustomSelector\": null,\r\n \"Elements\": [\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Body 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... otstrap(\\\"procedimento_trabalhar\\\") Processo'\",\r\n \"Tag\": \"body\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"vh-100 vw-100 d-flex flex-column m-0 border-0\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraAreaGlobal\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'GOVERNO DO ESTADO DE MINAS GERAIS Versão d ... otstrap(\\\"procedimento_trabalhar\\\") Processo'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"w-100 flex-grow-1 d-flex flex-row divInfraAreaTela\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraAreaTela\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'Acompanhamento Especial Base de Conhecimento Blocos ... otstrap(\\\"procedimento_trabalhar\\\") Processo'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \" flex-grow-1 px-3\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divInfraAreaTelaD\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'Processo'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"w-100 d-flex flex-grow-1 flex-lg-row\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divConteudo\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'divConteudo'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"flex-grow-1 d-none d-lg-block h-100 divLinha\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"divIframeVisualizacao\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"Div 'divIframeVisualizacao'\",\r\n \"Tag\": \"div\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \" w-100\"\r\n },\r\n {\r\n \"Ignore\": false,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"ifrVisualizacao\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Name\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"ifrVisualizacao\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Src\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": \"controlador.php?acao=arvore_visualizar&acao_origem=procedimento_visualizar&id_procedimento=882837240&infra_sistema=100000100&infra_unidade_atual=110002496&infra_hash=410e4168abb0775bdd10f3860f471662c52b1aaeb1d5c00d5bdf207f9542e360\"\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"SrcDoc\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": false,\r\n \"Name\": \"Inline frame 'ifrVisualizacao'\",\r\n \"Tag\": \"iframe\"\r\n },\r\n {\r\n \"Attributes\": [\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Class\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Id\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": true,\r\n \"Name\": \"Ordinal\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": 0\r\n },\r\n {\r\n \"Ignore\": true,\r\n \"IsOrdinal\": false,\r\n \"Name\": \"Title\",\r\n \"Operation\": \"EqualTo\",\r\n \"Value\": null\r\n }\r\n ],\r\n \"CustomValue\": null,\r\n \"Ignore\": true,\r\n \"Name\": \"HTML document 'SEI - Visualizar Árvore