SAP GUI脚本-在pywin32

时间:2018-09-26 21:13:55

标签: vba sap pywin32 pywinauto

我正在尝试编写一个脚本,以查看自定义报告。可以“打印”报告,然后将其另存为pdf。但是,将“ LOCL”指定为输出设备并选中复选框后,它将转到gui脚本输出中未包含的打印屏幕。

有人知道如何在vba或python中编写脚本以继续吗?我已经附上了弹出的打印对话框的屏幕截图,我不知道如何在vba或python中工作。然后出现的第二个对话框询问文件路径和文件名。

使用pywin32应该可以,但我不知道。 enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

使用pywinauto:pip install pywinauto应该会容易得多。代码应如下所示:

from pywinauto import Application

# handle Print dialog
app = Application(backend="win32").connect(title="Print") # timeout (in sec.) is optional
app.PrintDialog.OK.click() # or .click_input() for real click
app.PrintDialog.wait_not("visible") # to make sure it is closed

# handle Save dialog
app = Application(backend="win32").connect(title="Save Print Output As") # maybe not needed if it is the same process
app["Save Print Output As"].FileNameEdit.set_text(file_path) # or .type_keys(file_path, with_spaces=True)
app["Save Print Output As"].SaveButton.click() # or .click_input()
app["Save Print Output As"].wait_not("visible")