Windowsprogramme aus SAP aufrufen

Hallo zusammen,

gibt es eine Möglichkeit mit ABAP beliebige externe Windowsprogramme (mit Startparametern) aufzurufen und zu starten.

Optimal wäre eine direkte Anzeige in einen Custom-Control auf dem Dynpro. So wie man es mit Word / Excel oder Adobe kennt.

Bitte schreibt mir ein möglichst vollständiges Coding mit den Startbefehlen. Vielen Dank.

Gruß

IT-Brainstorm

Hi Brain,
versuche die EXECUTE-Methode der Klasse
cl_gui_frontend_services.

Gruß
Klaus

Hallo Klaus,

vielen Dank für Deine Unterstützung. Das hat soweit schon mal geklappt. Allerdings weiss ich jetzt noch nicht, wie die Anwendung in den Container (cl_gui_custom_container) eingebunden bekomme. Das klappt irgendwie noch nicht richtig. Hast Du dafür auch noch eine Idee?

Hier mal mein Test-Coding:

*&---------------------------------------------------------------------*
*& Report ZTESTEDIT_08012009 *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*

REPORT ZTESTEDIT_08012009.

DATA TASTE.

call screen 100.

*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0100 INPUT.

SET PF-STATUS ‚SCREEN_100‘.

case sy-ucomm.
when ‚TASTE‘.

CALL METHOD CL_GUI_FRONTEND_SERVICES=>EXECUTE
EXPORTING
* DOCUMENT = ‚‘
APPLICATION = ‚efControl.exe‘
* PARAMETER =
DEFAULT_DIRECTORY = ‚C:\Program Files\TIS\eFlow 3\Bin‘
* 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
.
IF SY-SUBRC 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

when ‚EXIT‘.
leave program.
endcase.

ENDMODULE. " USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS ‚SCREEN_100‘.
SET TITLEBAR ‚ZTESTEDIT‘.

ENDMODULE. " STATUS_0100 OUTPUT
_____________________________________________________________________

Viele Grüße

Brain

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Brain,
da helfen die Control-Beispiele.
Hier das SAP-Testprogramm SAPRDEMODOCUMENTCONTAINER2.

Findest Du in der TA SE80 unter:
Umfeld->Beispiele->Control-Beispiele.

Gruß
Klaus

Hallo Klaus,

ja jetzt habe ich zwar den Container, aber, wenn ich versuche den Container als Parent aufzurufen bekomme ich eine Fehlermeldung. Was mache ich falsch? Kann man die Klasse cl_gui_frontend_services garnicht in den Custom-Container hängen?

Gruß

Brain

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Brain,
nein, die Klasse brauchst Du da nicht reinzuhängen.
Die ruft einfach das Programm auf, mit dem die Dateiendung verknüpt ist.
Wie wenn Du auf eine .DOC-Datei doppelklickst und WORD geht mit der geladenen Datei auf.

Gruß
Klaus