Нажатие кнопок в 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