Externes Kommando per ABAP aufrufen?

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Externes Kommando per ABAP aufrufen?

Beitrag von miru77 (ForumUser / 68 / 10 / 7 ) »
Hallo,

ich möchte gerne ein externes Kommando statt über einen Job direkt in meinem
ABAP Programm aufrufen. Ich habe bereits gesucht und dafür den Funktionsbaustein
SXPG_CALL_SYSTEM gefunden.

Soweit scheint das auch zu klappen, jedoch fehlen mir noch die zwei Parameter "Betriebssystem"
und "Zielrechner". Weiß jemand an welcher Stelle ich die im Funktionsbaustein vorgeben kann?
Vielleicht irgendwie über die "additional_parameters"?

Code: Alles auswählen.

REPORT TEST.

data: lp_returncode like EXTCMDEXEX-EXITCODE.

data: ltab_exec_prot TYPE table of BTCXPM.


    call function 'SXPG_CALL_SYSTEM'
         exporting
              commandname                = 'ZGETUPFILE'
              additional_parameters      =  SPACE
         importing
              exitcode                   = lp_returncode
         tables
              exec_protocol              = ltab_exec_prot
         exceptions
              no_permission              = 1
              command_not_found          = 2
              parameters_too_long        = 3
              security_risk              = 4
              wrong_check_call_interface = 5
              program_start_error        = 6
              program_termination_error  = 7
              x_error                    = 8
              parameter_expected         = 9
              too_many_parameters        = 10
              illegal_command            = 11
              others                     = 12.

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


Re: Externes Kommando per ABAP aufrufen?

Beitrag von a-dead-trousers (Top Expert / 4419 / 224 / 1189 ) »
Das Betriebssystem wird eigentlich von SAP vorgegeben (SY-OPSYS) und kann dem Funktionsbaustein nicht mitgegeben werden.
Wäre ja IMHO sinnlos, wenn man eine gemischte Systemlandschaft hat (UNIX/LINUX) diesen Parameter "hardcoded" zu versorgen.
Man legt ja mit dem Customizing (SM69) fest, wie der Befehl XYZ im jeweiligen Betriebssystem zu interpretieren ist.

Alternativ gäbe es auch noch den FuBa SXPG_COMMAND_EXECUTE in derselben FuGr dem man das Betriebssystem mitgeben kann, aber damit hatte ich immer "unnötige" Probleme.

lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
miru77

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Externes Kommando per ABAP aufrufen?

Beitrag von miru77 (ForumUser / 68 / 10 / 7 ) »
Vielen Dank, funktioniert bestens. :)

Code: Alles auswählen.

REPORT TEST.

DATA: LTAB_EXEC_PROT TYPE TABLE OF BTCXPM.

CALL FUNCTION 'SXPG_COMMAND_EXECUTE'
  EXPORTING
    COMMANDNAME                   = 'ZGETUPFILE'
    OPERATINGSYSTEM               = SY-OPSYS
    TARGETSYSTEM                  = 'r0001278'
    ADDITIONAL_PARAMETERS         = SPACE
  TABLES
    EXEC_PROTOCOL                 = LTAB_EXEC_PROT
  EXCEPTIONS
    NO_PERMISSION                 = 1
    COMMAND_NOT_FOUND             = 2
    PARAMETERS_TOO_LONG           = 3
    SECURITY_RISK                 = 4
    WRONG_CHECK_CALL_INTERFACE    = 5
    PROGRAM_START_ERROR           = 6
    PROGRAM_TERMINATION_ERROR     = 7
    X_ERROR                       = 8
    PARAMETER_EXPECTED            = 9
    TOO_MANY_PARAMETERS           = 10
    ILLEGAL_COMMAND               = 11
    WRONG_ASYNCHRONOUS_PARAMETERS = 12
    CANT_ENQ_TBTCO_ENTRY          = 13
    JOBCOUNT_GENERATION_ERROR     = 14
    OTHERS                        = 15.
Vielleicht noch kurz zu Erklärung... das externe Kommando kopiert drei Excel-Dateien von einem Windows-Pfad ins SAP. Benötigt wird das für die Urlaubsverarbeitung im Produktionsbereich. Die Meister geben da jeweils die Abwesenheitstage in eine Exceltabelle ein und SAP verarbeitet die Einträge dann in der Nacht und spielt den Urlaub automatisch ins System ein. Auf die Art und Weise könnte man fast zu jedem Thema eine Excel-Schnittstelle basteln und sich vielleicht die ein oder andere Lizenz sparen. Vor allem kennt Excel eh fast jeder und muss nicht erst geschult werden wie er mit SAP umzugehen hat.

Seite 1 von 1

Vergleichbare Themen

9
Antw.
3506
Views
Job für externes Kommando mit Systemparameter einplanen
von damberge » 04.09.2006 10:18 • Verfasst in ABAP® Core
1
Antw.
1495
Views
Externes Script ruft ABAP Programm auf
von gRds » 25.07.2007 09:52 • Verfasst in ABAP® Core
4
Antw.
12095
Views
bapis mit abap aufrufen
von tommy_the_dau » 30.06.2005 19:15 • Verfasst in ABAP® für Anfänger
0
Antw.
1648
Views
C Programm aus ABAP aufrufen
von Petwar_pk » 23.07.2009 14:32 • Verfasst in ABAP® Core
3
Antw.
3572
Views
HTML Seite aus ABAP aufrufen
von Petwar_pk » 29.06.2009 09:45 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Hilfe zum FB MATERIAL_MAINTAIN_DARK
Gestern von black_adept gelöst 8 / 1770
HR-Entgeltnachweis
vor 2 Tagen von ChrisB 4 / 2311

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

Hilfe zum FB MATERIAL_MAINTAIN_DARK
Gestern von black_adept gelöst 8 / 1770
HR-Entgeltnachweis
vor 2 Tagen von ChrisB 4 / 2311

Unbeantwortete Forenbeiträge

Export von Spools in XLSX
vor 4 Tagen von abapamateur 1 / 330
Feldberechnung ME32K
vor einer Woche von ZF_SAPler 1 / 920
MS-Word als Editor
letzen Monat von tekko 1 / 4432