SAP Jobsuche bei DV-Treff
TheoS
  • TheoS
  • SAP Forum - Neuling Thema Starter
vor 11 Jahre
Hallo zusammen,

bin leider noch völlig neu auf dem Gebiet und brauche Hilfe bei einer vermutlich recht banalen Aufgabe.

Ich öffne bereits per VBA eine Transaktion in SAP, nun habe ich mit Hilfe von GuiXT ein Script aufgezeichnet dass Eingaben innerhalb der Transaktion enhält.

Dieses Script würde ich nun gerne via VBA starten und somit die Felder in der Transaktion ausführen. Welche Befehle sind notwendig?

Vielen Dank und Grüße,

Theo

Förderer

ScriptMan
vor 11 Jahre
Hallo Theo,

willkommen im Forum. Ich hätte gleich am Anfang eine Gegenfrage:

Was soll der Grund sein, dass man aus VBA ein GuiXT-Script /Inputscript starten muss?

Man könnte doch auf der Ebene eines VB-Scriptes bleiben und dann die Kommandos nach der Öffnung einer TA aus VBA einfach ergänzen. Dazu müsste man nur den SAP GUI Scriptrecorder bemühen und das aufgezeichnete Skript dazu verwenden.

Falls es tatsächlich ein GuiXT-Script / Inputscript sein muss, wäre es von Vorteil, wenn du einige Beispiele aus deinem Code präsentieren könntest.

Freundliche Grüße

ScriptMan

TheoS
  • TheoS
  • SAP Forum - Neuling Thema Starter
vor 11 Jahre
Danke für den Willkommensgruß.

Grund für mich, ist ein wiederkehrender Report. Da der Report in Excel ausgewertet wird (mit vielen folgenden Makros), würde ich gerne den SAP Download in den VBA Code der Excel Datei aufnehmen.

Per VBA/Script würde ich dann die Transaktion aufrufen wollen, die jeweiligen Felder nach meinen Ansprüchen ausfüllen lassen und die Transaktion ausführen.

Hier ein Auszug:

Zitat:

// Material Master Detailed Display

Screen ZMMLR07A_MATERIALS_DISPLAY.1000

Set F[Material Type] "xx"

Enter "=%014" // Multiple selection.4

// Multiple Selection for Plant

Screen SAPLALDB.3000

Set cell[Table,Single value,1] "xx"

Set cell[Table,Single value,2] "xx"

Set cell[Table,Single value,3] "xx"

Set cell[Table,Single value,4] "xx"

Set cell[Table,Single value,5] "xx"

Set cell[Table,Single value,6] "xx"

Enter "/8"

Für einfachere Lösungen bin ich selbstverständlich gerne zu haben.

LG,

Theo

ScriptMan
vor 11 Jahre
Auf den Hinweis mit dem SAP GUI Scriptrecorder gehst du aus irgendwelchen Gründen überhaupt nicht ein. Du kannst doch über ALT / F12 -> Skript-Aufzeichnung und -Playback innerhalb von SAP ein genau solches VB-Skript wie in deinem Beispiel dargestellt über die SAP GUI - Oberfläche aufzeichnen.

Der Vorteil dabei wäre, dass du nicht zwischen den 2 Technologien wechseln und diese noch zusätzlich synchronisieren musst. Wichtig ist nur, dass du weißt, was du willst. 😎

z.B.

Start aus VBS/ VBA:


set wshell = createObject("Wscript.Shell")

wshell.run chr(34) & "c:\program files (x86)\sap\frontend\sapgui\guixt.exe" & chr(34) & " Input=" & chr(34) & "OK:,process=c:\guixt\scripts\myInputScript.txt" & chr(34)

Freundliche Grüße

ScriptMan

newgui
vor 11 Jahre
Hallo Theo,

da muss ich Scriptman beipflichten. Ich würde das auch gleich über vba in Verbindung mit guiscripting lösen.

Scriptman hat mir diesbezüglich auch schon mal in einem Beitrag geholfen (siehe link unterhalb). Das funktioniert eigentlich ganz gut und ich habe mir und einigen Kollegen damit schon viel Arbeit erspart.

http://www.dv-treff.de/yaf_postst12015_Gui-Scripting---Variable-aus-aktiver-Excel-Datei-ubergeben.aspx 

mfg newgui