Automate SAP with python!
Project description
Github - https://github.com/kamildemocko/PySapScript
SAP scripting for use in Python.
Can perform different actions in SAP GUI client on Windows.
Documentation
https://kamildemocko.github.io/PySapScript/pysapscript.html
Installation
pip install pysapscript
Usage
Create pysapscript object
import pysapscript
sapscript = pysapscript.Sapscript()
parameter default_window_title: = "SAP Easy Access"
Launch Sap
sapscript.launch_sap(
sid="SQ4",
client="012",
user="robot_t",
password=os.getenv("secret_password")
)
additional parameters:
root_sap_dir = Path(r"C:\Program Files (x86)\SAP\FrontEnd\SAPgui")
maximise = True
quit_auto = True
Attach to an already opened window:
from pysapscript.window import Window
window: Window = sapscript.attach_window(0, 0)
positional parameters (0, 0) -> (connection, session)
Quitting SAP:
- pysapscript will automatically quit if not manually specified in
launch_sap
parameter - manual quitting method:
sapscript.quit()
Performing action:
element: use SAP path starting with wnd[0]
for element arguments, for example wnd[0]/usr/txtMAX_SEL
- element paths can be found by recording a sapscript with SAP GUI or by applications like SAP Script Tracker
window = sapscript.attach.window(0, 0)
window.maximize()
window.restore()
window.close()
window.start_transaction(value)
window.navigate(NavigateAction.enter)
window.navigate(NavigateAction.back)
window.write(element, value)
window.press(element)
window.send_v_key(value[, focus_element=True, value=0])
window.select(element)
window.read(element)
window.set_checkbox(value)
window.visualize(element[, seconds=1])
table: ShellTable = window.read_shell_table(element)
html_content = window.read_html_viewer(element)
Table actions
ShellTable uses polars, but can also be return pandas or dictionary
from pysapscript.shell_table import ShellTable
table: ShellTable = window.read_shell_table()
table.rows
table.columns
table.to_dict()
table.to_dicts()
table.to_polars_dataframe()
table.to_pandas_dataframe()
table.cell(row_value, col_value_or_name)
table.get_column_names()
table.load()
table.press_button(value)
table.select_rows([0, 1, 2])
table.change_checkbox(element, value)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pysapscript-3.0.0.tar.gz
(20.6 kB
view hashes)
Built Distribution
Close
Hashes for pysapscript-3.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07c11e4318eeae6b2defcabaec4495fd0a8602ee917c32c942ffd660b0d8c080 |
|
MD5 | 7a3901936ad195b1c17a4035418a08ac |
|
BLAKE2b-256 | 53fc844dfb9bf3a5e691c201520600b73bff0fd837d879c87e66708294ce0c26 |