CL_GUI_FRONTEND_SERVICES=>EXECUTE

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
10 Beiträge • Seite 1 von 1
10 Beiträge Seite 1 von 1

CL_GUI_FRONTEND_SERVICES=>EXECUTE

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
Hallo,

meines Wissens nach kann ich mit der Methode

CALL METHOD cl_gui_frontend_services=>execute
* EXPORTING
* DOCUMENT =
* APPLICATION =
* PARAMETER =
* DEFAULT_DIRECTORY =
* MAXIMIZED =
* MINIMIZED =
* SYNCHRONOUS =
* OPERATION = 'OPEN'
* EXCEPTIONS
* CNTL_ERROR = 1
* ERROR_NO_GUI = 2
* BAD_PARAMETER = 3
* FILE_NOT_FOUND = 4
* PATH_NOT_FOUND = 5
* FILE_EXTENSION_UNKNOWN = 6
* ERROR_EXECUTE_FAILED = 7
* SYNCHRONOUS_FAILED = 8
* NOT_SUPPORTED_BY_GUI = 9
* others = 10
.

eines *.EXE Datei öffnen und unter Parameters auch übergabeparameter übergeben.

In meinem Fall würde ich gerne eine eine von mir geschrieben VisualBasic .EXE aufrufen, nur weiß ich nicht wie ich die Parameter die ich mitgebe in meinem VB Programm abfragen kann ?!

Oder ist die Methode zum starten einer vb anwendung mit übergabeparameter ungeeignet ?!?!

mfg strizi

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Kirschner (ForumUser / 3 / 0 / 0 ) »
Hallo abap-strizi,
ist ganz einfach:

CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
application = lc_prog
parameter = lc_param
synchronous = 'X'
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
bad_parameter = 3
file_not_found = 4
path_not_found = 5
file_extension_unknown = 6
error_execute_failed = 7
OTHERS = 8
.
Wobei in lc_prog der Name des EXE Programms (am besten mit Rechnername und Pfad) steht.
In lc_param sind die Paramter für das Programm angegeben.
Mit synchronous = 'X' wartet das aufrufende Programm auf das Ergebnis.

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
ich habs zwar noch nicht versucht aber ich nehme an mein vb programm wird mit dieser methode richtig aufgerufen, nur was ich immer noch nicht verstanden habe ich ich in meinem vb programm den parameter string der von der execute methode übergeben wird, einlese oder bin ich zu begriffstützig ?!

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
und wenn die VB.exe von mehreren SAP-Clients gleichzeitig aufgerufen wird, dann muss das ganze ja auch noch irgendwie Multithreading fähig sein oder wie man das nennt =)

hab da leider nicht so den plan davon =(((

mfg

Beitrag von Kirschner (ForumUser / 3 / 0 / 0 ) »
Hallo abap-strizi,
also falls Dein Programm Parameter einließt kann der Parameter in lc_param übergeben werden. Wenn also in der Kommandozeile stehen würde:
xyz.exe meine.txt so käme in lc_prog "xyz.exe" und in lc_param "meine.txt"

Zum Zweiten glaube ich dass so ein Programm im einem eigenen Prozessraum ausgeführt wird. Sich also normalerweise nicht mit anderen streitet. Es sei denn Du verwendest die physikalisch gleichen Dateien die Dein VB bearbeitet. Sprich absolute Text oder so.

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
ja so weit so gut, aber wie mein VB programm genau diesen lc_param parameter beim programmaufruf auslesen kann, weiß ich leider trotzdem noch nicht =(

trotzdem danke erstmal.

Beitrag von Kirschner (ForumUser / 3 / 0 / 0 ) »
Hallo abap-strizi,
hier ruft ein ABAP Programm ein VB Programm.
Also wird der Paramter vom ABAP Programm gefüllt zum Beispiel
lc_prog = 'xyz.exe'.
und gut ist.
Das VB Programm wird dann im einer Commandshell aufgerufen und der Paramter übergeben.

Ich weis sonst jendefalls nicht, wo sonst die Funktion

cl_gui_frontend_services=>execute

verwendet werden kann.

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
hmm wahrscheinlich bin ich zu begriffstützig bzw. kann zu wenig vb.
denn ich habe noch immer keinen plan wie ich in meinem vb programm auf die übergebenen parameter zugreifen kann ...

mfg

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
abap-strizi hat geschrieben:denn ich habe noch immer keinen plan wie ich in meinem vb programm auf die übergebenen parameter zugreifen kann ...
Schau mal hier http://msdn.microsoft.com/library/defau ... ommand.asp

Die Funktion die du suchst ist COMMAND(), diese gibt dir alle Parameter zurück. Du mußt aber selber parsen.
Gruß Hendrik

Beitrag von abap-strizi (ForumUser / 83 / 0 / 0 ) »
danke

Seite 1 von 1

Vergleichbare Themen

3
Antw.
1064
Views
Klasse CL GUI FRONTEND SERVICES, Methode GUI DOWNLOAD
von L0w-RiDer » 27.08.2019 12:58 • Verfasst in ABAP® für Anfänger
1
Antw.
1085
Views
execute procedure
von autohandel7 » 20.07.2018 10:52 • Verfasst in ABAP® für Anfänger
1
Antw.
1196
Views
CL_GUI_FRONTEND_SERVICES-> Methode Execute
von chfreise » 07.04.2008 15:26 • Verfasst in ABAP® Core
2
Antw.
2636
Views
Acf Execute + Problem mit Whitelist
von jonny_1st » 24.10.2013 11:03 • Verfasst in Web-Dynpro, BSP + BHTML
4
Antw.
3629
Views
Probelm mit Klassenmethode cl_gui_frontend_services=>execute
von harry1991 » 27.06.2013 09:49 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Daten an Tabelle binden
vor 13 Stunden von Bright4.5 3 / 1485
Regex in where
vor 14 Stunden von tar 6 / 159

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Daten an Tabelle binden
vor 13 Stunden von Bright4.5 3 / 1485
Regex in where
vor 14 Stunden von tar 6 / 159

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9821