Я пытаюсь создать сценарий процесса SAP, который просматривает настраиваемый отчет. Отчет можно «распечатать», а затем сохранить в формате pdf. Однако, как только вы укажете «LOCL» в качестве устройства вывода и установите флажок, он перейдет к экрану печати, который не включен в вывод сценария gui.
Кто-нибудь знает, как написать скрипт на vba или python для продолжения? Я прикрепил снимок экрана с диалоговым окном печати, которое всплывает, и я не могу понять, как работать в vba или python. Затем появляется второй диалог с запросом пути к файлу и имени файла.
Это должно быть возможно с pywin32, но я не могу этого понять.
С 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")