Hallo Destrubtor,
vielleicht hilft dir mein Hinweis weiter. Rufe über Alt / F12 --> Optionen --> Scripting eine Maske auf, in der man das Scripting einschaltet und die beiden unten stehenden Meldungen abschaltet. Starte anschließend deine Transaktion mit der Materialnummer und dem auf dem Bildschirm zu sehenden internen Vermerk. Rufe in diesem Moment über Alt / F12 --> Skriptaufzeichnung und -Playback den Scriptrecorder auf. Drücke auf den roten Knopf und beginne die Aufzeichnung. Positioniere den Cursor auf den internen Vermerk. Beende anschließend die Aufzeichnung mit dem gelben Knopf und schließe den Scriptrecorder. Suche dann nach einer VBS-Datei namens script1.vbs, die sich z.B. bei mir unter %USERPROFILE% \ SapWorkDir nach jeder Aufzeichnung befindet. Diese könnte u.U. wie folgt aussehen:
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]/usr/ctxtRESC_SETTL_UNIT_X-SEMPSL").setFocus
session.findById("wnd[0]/usr/ctxtRESC_SETTL_UNIT_X-SEMPSL").caretPosition = 4
Betrachten wir jetzt die zuletzt aufgezeichnete Position. Füge in deinen Script folgende Zeile ein:
TEXT = session.findById("wnd[0]/usr/ctxtRESC_SETTL_UNIT_X-SEMPSL").text
Damit kannst du in die Variable TEXT einen Text von SAPGUI übertragen und anschließend für deine Zwecke verwenden.
Viel Spaß beim Testen!
ScriptMan