eager2019
Goto Top

Pdf aus dem spool mittel SAP Scripting VBS

ich würde gerne automatisiert aus dem spool drucken.

das script läuft auch bis zum Fenster "Speichern unter" öffnet sich aber das Fenster ansteuern und "Enter" eingeben funktioniert nicht.

kann mir jemand helfen?

Vielen Dank

session.findById("wnd").maximize
session.findById("wnd/tbar/okcd").text = "SA38"
session.findById("wnd").sendVKey 0
session.findById("wnd/usr/ctxtRS38M-PROGRAMM").text = "rstxpdft4"
session.findById("wnd/usr/ctxtRS38M-PROGRAMM").caretPosition = 9
session.findById("wnd/tbar[1]/btn[8]").press
session.findById("wnd/usr/txtSPOOLNO").text = "786729"
session.findById("wnd/usr/txtP_FILE").text = "Test_V_5_290519"
session.findById("wnd/usr/txtP_FILE").setFocus
session.findById("wnd/usr/txtP_FILE").caretPosition = 8
session.findById("wnd/tbar[1]/btn[8]").press

Content-Key: 456921

Url: https://administrator.de/contentid/456921

Printed on: April 24, 2024 at 08:04 o'clock

Member: Pjordorf
Pjordorf May 29, 2019 at 12:20:36 (UTC)
Goto Top
Hallo,

Zitat von @EAGER2019:
das script läuft auch bis zum Fenster "Speichern unter" öffnet sich aber das Fenster ansteuern und "Enter" eingeben funktioniert nicht.
Welche Skriptsprache ist es denn?
Welche Hochsprache ist es denn?
Ist der Code vollständig?

session.findById("wnd").maximize  
session.findById("wnd/tbar/okcd").text = "SA38"  
session.findById("wnd").sendVKey 0  
session.findById("wnd/usr/ctxtRS38M-PROGRAMM").text = "rstxpdft4"  
session.findById("wnd/usr/ctxtRS38M-PROGRAMM").caretPosition = 9  
session.findById("wnd/tbar[1]/btn[8]").press  
session.findById("wnd/usr/txtSPOOLNO").text = "786729"  
session.findById("wnd/usr/txtP_FILE").text = "Test_V_5_290519"  
session.findById("wnd/usr/txtP_FILE").setFocus  
session.findById("wnd/usr/txtP_FILE").caretPosition = 8  
session.findById("wnd/tbar[1]/btn[8]").press  
So könnte dein Code auch aussehen. Nimm dazu links vom Editorfenster das zweite Icon von unten. Geht auch nachträglich.

Gruß,
Peter
Member: EAGER2019
EAGER2019 May 29, 2019 at 12:43:19 (UTC)
Goto Top
´Hallo Peter,

Skriptsprache ist VBS.
Es handelt sich hier um eine Aufzeichnung aus SAP mittels der "Skript-Aufzeichnung"

der gesamte Code sieht so aus
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").maximize  
session.findById("wnd/tbar/okcd").text = "SA38"  
session.findById("wnd").sendVKey 0  
session.findById("wnd/tbar[1]/btn[8]").press  
session.findById("wnd/usr/txtSPOOLNO").text = "786729"  
session.findById("wnd/usr/txtP_FILE").text = "Test_V_5_290519"  
session.findById("wnd/usr/txtP_FILE").setFocus  
session.findById("wnd/usr/txtP_FILE").caretPosition = 8  
session.findById("wnd/tbar[1]/btn[8]").press