Skip to Content
Technical Articles

Automação do SAPGUI com python

Automacao SAPGui

Automação do SAP Gui utilizando o Python.

Vamos criar um robo que automaticamente acessa o SAP Gui “SAP logon” e executa uma transação e faz qualquer operação que desejarmos.

Faça automatização e vá para outro nível profissional, pare de fazer trabalhos repetitivos.

Seja você quem faz a diferença na tua empresa.

Esse exemplo de automação pode e deve ser aplicado em vários outros trabalhos manuais e repetitivos.

Vamos estudar jundo o código que foi criado.

Acesse o arquivo automacaoGUI.py para ter acesso ao código fonte

O que vamos precisar?

  1. Python.
  2. Ambiente virtual – Virtualenv “opcional”
  3. Pacotes do python “time, os e selenium”
  4. Driver para windows.

Detalhando os itens acima.

  1. Python.
    • Vem instalado em todos sistemas operacionais, exceto o windows.
    • Para instalar no windows, clique aqui e veja como
  2. Ambiente virtual.
    • Instalar, clique e veja como
    • Para criar a máquina virtual “virtualenv nome_da_virtualenv”
    • Para acessar “source nome_da_virtualenv/bin/activate”
  3. Pacotes do Python.
    • pip install selenium
    • Os outros vem com a instalação padrão do python, não precisa adicionar.
  4. Driver para windows.

Todo ambiente pronto agora é mão no código.

Calma que vamos analisar linha por linha calmamente.

Veja o vídeo abaixo com os detalhes para fazer a automação.

 

# coding: utf-8
import time
import subprocess
import login
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys

winium = subprocess.Popen("C:\\Users\\ciro.junior\\Documents\\Winium.Desktop.Driver.exe")

#Abrindo o SAP Gui
driver = webdriver.Remote(
    command_executor='http://localhost:9999',
    desired_capabilities={
        'app': r'C:\Program Files (x86)\SAP\FrontEnd\SapGui\saplogon.exe'
    })

#Clicando no ambiente que deseja acessar no SAP Gui.
time.sleep(5)
elemento = driver.find_element_by_name("QAS").click()
actionchains = ActionChains(driver)
actionchains.double_click(elemento).perform()

#Passando usuário e senha para logar.
usuario = login.usuario()
senha = login.senha()

time.sleep(3)
elemento = driver.find_element_by_id("1004").click()
elemento = driver.find_element_by_id("1004")
elemento.send_keys(usuario)

elemento = driver.find_element_by_id("1005").click()
elemento = driver.find_element_by_id("1005")
elemento.send_keys(senha)

elemento = driver.find_element_by_name("Logon").click()

time.sleep(10)


elemento = driver.find_element_by_id("1001").click()
elemento = driver.find_element_by_id("1001")
elemento.send_keys('ME2N')
elemento.submit()

time.sleep(2)

elemento = driver.find_element_by_id("4004").click() #chamar variante
time.sleep(42)

#Fechando o SAP Gui e winium
driver.close()
winium.terminate()

 

Para achar os ID no programas windows vamos utilizar o software Accessibility Insights.

Você também pode ver a automação do SAP Analytics Cloud

Vamos automatizar tudo e fazer só o trabalho que realmente importa.

Be the first to leave a comment
You must be Logged on to comment or reply to a post.