Коллеги, кто-нибудь может помочь сделать скрипт. Имеется таблица Excel с тремя колонками: Точка измерений (например, 1118), Дата (Например, 27.11.2012), Моточасы (Например, 1210). Необходимо с помощью SAP-скрипта данные из таблицы Excel (примерно 200-300 строк) использовать для автоматического создания Документов измерений через транзакцию IK11.
Вроде бы должно быть что-то вроде этого. А как сделать, чтобы автоматом пробегалось по всей таблице и значения использовались для создания документов измерения
If Not IsObject(application) Then Set SapGuiAuto = GetObject("SAPGUI") Set application = SapGuiAuto.GetScriptingEngine End If If Not IsObject(connection) Then Set connection = application.Children(0) End If If Not IsObject(session) Then Set session = connection.Children(0) End If If IsObject(WScript) Then WScript.ConnectObject session, "on" WScript.ConnectObject application, "on" End If ' 'Развернуть основное окно (можно удалить строку) session.findById("wnd[0]").maximize ' запуск транзакции session.findById("wnd[0]/tbar[0]/okcd").text = "ik11" 'Нажатие клавиши [Enter] session.findById("wnd[0]").sendVKey 0 ' ' запуск Excel Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open ("C:\Documents and Settings\44kd\Мои документы\sap_script\new.xls")
intRow = 2
'Do Until objExcel.Cells(intRow,1).Value = "" ' Wscript.Echo "CN: " & objExcel.Cells(intRow, 1).Value ' Wscript.Echo "sAMAccountName: " & objExcel.Cells(intRow, 2).Value ' Wscript.Echo "GivenName: " & objExcel.Cells(intRow, 3).Value ' Wscript.Echo "LastName: " & objExcel.Cells(intRow, 4).Value ' intRow = intRow + 1 'Loop
session.findById("wnd[0]/usr/ctxtIMRG-POINT").text = "1118" session.findById("wnd[0]/usr/ctxtIMRG-POINT").caretPosition = 3 session.findById("wnd[0]").sendVKey 0 session.findById("wnd[0]/usr/txtRIMR0-CNTRC").text = objExcel.Cells(intRow, 2).Value 'session.findById("wnd[0]").sendVKey 0 session.findById("wnd[0]/usr/ctxtIMRG-IDATE").text = objExcel.Cells(intRow, 1).Value 'session.findById("wnd[0]/usr/ctxtIMRG-ITIME").text = "15:00:00" session.findById("wnd[0]/usr/txtIMRG-MDTXT").text = "test" 'session.findById("wnd[0]/usr/txtIMRG-MDTXT").setFocus 'session.findById("wnd[0]/usr/txtIMRG-MDTXT").caretPosition = 4 session.findById("wnd[0]/tbar[0]/btn[11]").press
objExcel.Quit
|
|