scripts:autoit
Нажатие кнопок в 1С
С простейшим графическим интерфейсом.
#include <GUIConstantsEx.au3> Opt('MustDeclareVars', 1) MainGUI() Func MainGUI() Local $Button1, $Button2, $Button3, $Button4, $msg GUICreate("Помощник по нарядам в 1C") Opt("GUICoordMode", 2) $Button1 = GUICtrlCreateButton("Запустить 1С и найти свои наряды", 25, 30, 350) $Button2 = GUICtrlCreateButton("Закрыть наряд", -1, 30) $Button3 = GUICtrlCreateButton("Взять наряд в работу + распечатать сервисную заявку (1-й зам.)", -1, 30) $Button4 = GUICtrlCreateButton("Закрыть наряд + распечатать сервисную заявку", -1, 30) GUISetState() ; Run the GUI until the window is closed While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE ExitLoop Case $msg = $Button1 Run ( '"C:\Program Files (x86)\1cv8\common\1cestart.exe" ENTERPRISE /WS "http://192.168.1.155/itilium/" /N "username"' ) WinWait ("[CLASS:V8TopLevelFrameSDI]") Sleep (3000) WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("{F6 2}") Send ("^f") Sleep (2000) Send ("+{TAB}") Send ("ответст") Sleep (1000) Send ("{ENTER}") Send ("username") Sleep (1000) Send ("{ENTER}") Send ("{TAB}") Send ("{ENTER}") Case $msg = $Button2 for $i=1 to InputBox("", "Сколько нарядов нужно закрыть?", 1) WinActivate ("[CLASS:V8TopLevelFrameSDI]") ; Взять наряд в работу Send ("{ENTER}") Send ("{TAB 10}") Send ("{SPACE}") Sleep ( 5000 ) ; Пометить наряд выполненным WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("+{TAB}") Send ("{DOWN}") Send ("{ENTER}") Sleep ( 5000 ) ; Закрыть Send ("+{TAB 21}") Send ("{ENTER}") Sleep ( 3000 ) next Case $msg = $Button3 WinActivate ("[CLASS:V8TopLevelFrameSDI]") ; Взять наряд в работу Send ("{ENTER}") Send ("{TAB 10}") Send ("{SPACE}") Sleep ( 5000 ) ; Пометить наряд выполненным WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("+{TAB}") Send ("{DOWN}") Send ("{ENTER}") Sleep ( 5000 ) ; Распечатать сервисную заявку Send ("^p") Send ("{ENTER}") Sleep ( 5000 ) WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("{ESC}") Case $msg = $Button4 for $i=1 to InputBox("", "Сколько нарядов нужно закрыть и распечатать сервисную заявку?", 1) WinActivate ("[CLASS:V8TopLevelFrameSDI]") ; Взять наряд в работу Send ("{ENTER}") Send ("{TAB 10}") Send ("{SPACE}") Sleep ( 5000 ) ; Пометить наряд выполненным WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("+{TAB}") Send ("{DOWN}") Send ("{ENTER}") Sleep ( 5000 ) ; Распечатать сервисную заявку Send ("^p") Send ("{ENTER}") Sleep ( 5000 ) WinActivate ("[CLASS:V8TopLevelFrameSDI]") Send ("{ESC}") ; Закрыть Send ("+{TAB 21}") Send ("{ENTER}") Sleep ( 3000 ) next EndSelect WEnd EndFunc
Loop 10 times, Repeat x Times?
Автоматизация управления музыкой в офисе, любая песня на заказ по ICQ
How to Create GUIs in AutoIt
AutoIt Cmdlets for Windows PowerShell
GUI Reference
scripts/autoit.txt · Последнее изменение: 30.07.2024 19:21 — 127.0.0.1