Export und Import von Entwicklungen

Alle Fragen rund um Basisthemen
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Export und Import von Entwicklungen

Beitrag von brunotti (ForumUser / 8 / 0 / 0 ) »
Hallo zusammen,

ich habe eine sehr spezielle Frage.
Gibt es eine komfortable Lösung, um Entwicklungen (Coding, Datenelemente, Funktionsbausteine, Dynpros,...) von einem System zu exportieren und in ein anderes (fremdes, z.B. bei einem anderen Kunden) System zu importieren?

Bisher habe ich keine Möglichkeit gefunden, außer dass ich das Coding exportien kann, aber alles andere wie die Datenelemente, Strukturen und Dynpros wieder manuell anlegen muss. Das möchte ich gerne verhindern und ein Paket ähnlich wie ein Transportauftrag zum Transferieren benutzen.

Gibt es sowas, oder muss ich den umständlichen Weg gehen?

Vielen Dank schon einmal für eure Antworten.

brunotti

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


Beitrag von Tron (Top Expert / 1327 / 35 / 332 ) »
Hallo brunotti,
ich weiss nicht was an Deiner Frage speziell ist, erscheint es mir, als stellst Du die Fragen aller Fragen schlechthin.

Falls alle Systeme die Du betreust den selben Release-Stand haben sind die Transportdateiformate kompatibel .Du könntest die beiden Dateien eines Transportauftrags mit einem kleinen Programm aus dem Transportverzeichnis zum Frontend hochladen und auf den Memorystick packen. (Den umgekehrten Weg dann bei Dir oder Kunden, wenn Kunde das erlaubt).

Aber SAP war noch nie einfach und selten komfortabel, deshalb ist eher zu erwarten das Du es mit verschiedenen SAP.Releases zu tun haben wirst und damit die Transportdateien nicht kompatibel sind.

Es sind wahrhaftig schon eine ganze Menge an Programmen entstanden, die Eigenentwicklungen auf der lokalen Festplatte (zumeist in einem eigenen Format) ablegen können. Aber Vorsicht, die Systementwicklung von SAP-Systemen ist im ständigen Fluss und die Downloader können ja nicht die Zukünftigen Weiterentwicklungen berücksichtigen, so dass auch die Download Programme ständig weiterentwickelt werden müssen.
hier ein Beispiel : http://www.multisoft-expert.de/download.htm

Gruß Tron
<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Beitrag von brunotti (ForumUser / 8 / 0 / 0 ) »
Hallo Tron,

vielen Dank für deine Antwort.
Die Idee, die Transportaufträge mit einem Programm zu exportieren scheint mir, nach deinen Ausführungen, auch die einzige Möglichkeit zu sein.
Den Hinweis mit verschiedenen Release-Ständen werde ich berücksichtigen.
Jetzt weiß ich wenigstens welchen Weg ich zu meinem Ziel einzuschlagen habe. Dann mache ich mich mal an die Arbeit.
Danke nochmal für den gedanklichen Anstoß.

Ciao
brunotti

Beitrag von Tron (Top Expert / 1327 / 35 / 332 ) »
Hallo brunotti,

hier hätte ich noch ein bisschen Hilfe. Entscheide selbst, welche Teile Du für Dein Programm zum Einsatz bringst. Benutze am besten die Transaktion AL11
für die Ermittlung des Pfades zum den Verzeichnissen cofiles und data und zur Kontrolle ob Deine Hochgeladenen Dateien auch ankommen.
Ach by the way : Beachte das UNIX Systeme Groß-und Kleinschrift in Pfad und Dateinamen sehr wohl unterscheiden. Also mehr hätte ich jetzt auch nicht....

gruß Tron :)

Code: Alles auswählen.

* Ermittlung des  Transportverzeichnisses

DATA DIRNAME TYPE text255.


  CALL FUNCTION 'RSPO_R_SAPGPARAM'
    EXPORTING
      name   = 'DIR_TRANS'
    IMPORTING
      value  = DIRNAME
    EXCEPTIONS
      error  = 1
      OTHERS = 2.

IF SY-SUBRC <> 0.
 MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

Code: Alles auswählen.

* Ermittle den Pfad Trenner
  IF sy-opsys CS 'WINDOWS'.
* Windows NT/2000
    sep = '\'.
  ELSE.
* UNIX
    sep = '/'.
  ENDIF.

Code: Alles auswählen.

  
* Lesen eines Binärfiles auf dem App Server

TYPES: BEGIN OF IT_TYPE,
        ZEICHEN TYPE X,
      END OF IT_TYPE.
DATA ITAB TYPE TABLE OF IT_TYPE.

DATA dsn(75) TYPE C.

    OPEN DATASET dsn FOR INPUT IN BINARY MODE.

    IF sy-subrc = 0.

      DO.
        READ DATASET dsn INTO wa .
        IF sy-subrc = 4 . EXIT . ENDIF.
        APPEND wa TO itab.
      ENDDO.

      CLOSE DATASET dsn.

Code: Alles auswählen.

*** Schreiben eines Binärfiles

*Write File to /Data
*  OPEN DATASET BINFILE1 FOR OUTPUT IN BINARY MODE.
*  LOOP AT ITAB INTO WA.
*    TRANSFER WA TO BINFILE1.
*  ENDLOOP.
*  CLOSE DATASET BINFILE1.

Code: Alles auswählen.

* Upload von Binärdaten
CALL FUNCTION 'UPLOAD'
 EXPORTING
*   CODEPAGE                      = ' '
   FILENAME                      = 'c:\_DATFILE.DAT'
   FILETYPE                      = 'BIN'
   ITEM                          = 'Name der Transportdatei'
*   FILEMASK_MASK                 = ' '
*   FILEMASK_TEXT                 = ' '
*   FILETYPE_NO_CHANGE            = ' '
*   FILEMASK_ALL                  = ' '
*   FILETYPE_NO_SHOW              = ' '
*   LINE_EXIT                     = ' '
*   USER_FORM                     = ' '
*   USER_PROG                     = ' '
    SILENT                        = 'S'
* IMPORTING
*   FILESIZE                      =
*   CANCEL                        =
*   ACT_FILENAME                  =
*   ACT_FILETYPE                  =
  TABLES
    DATA_TAB                      = itab
 EXCEPTIONS
   CONVERSION_ERROR              = 1
   INVALID_TABLE_WIDTH           = 2
   INVALID_TYPE                  = 3
   NO_BATCH                      = 4
   UNKNOWN_ERROR                 = 5
   GUI_REFUSE_FILETRANSFER       = 6
   OTHERS                        = 7.

IF SY-SUBRC <> 0.
 MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

Code: Alles auswählen.

* Download von Binärdaten
    CALL FUNCTION 'DOWNLOAD'
     EXPORTING
*   BIN_FILESIZE                  = ' '
*   CODEPAGE                      = ' '
        FILENAME                = 'C:\_DATA.DAT'
        FILETYPE                = 'bin'
   ITEM                          = 'File from DATA-DIR'
*   MODE                          = ' '
*   WK1_N_FORMAT                  = ' '
*   WK1_N_SIZE                    = ' '
*   WK1_T_FORMAT                  = ' '
*   WK1_T_SIZE                    = ' '
*   FILEMASK_MASK                 = ' '
*   FILEMASK_TEXT                 = 'File from DATA-DIR'
*   FILETYPE_NO_CHANGE            = ' '
*   FILEMASK_ALL                  = ' '
*   FILETYPE_NO_SHOW              = ' '
*   SILENT                        = 'S'
*   COL_SELECT                    = ' '
*   COL_SELECTMASK                = ' '
*   NO_AUTH_CHECK                 = ' '
* IMPORTING
*   ACT_FILENAME                  =
*   ACT_FILETYPE                  =
*   FILESIZE                      =
*   CANCEL                        =
      TABLES
        DATA_TAB                      = ITAB
*   FIELDNAMES                    =
     EXCEPTIONS
       INVALID_FILESIZE              = 1
       INVALID_TABLE_WIDTH           = 2
       INVALID_TYPE                  = 3
       NO_BATCH                      = 4
       UNKNOWN_ERROR                 = 5
       GUI_REFUSE_FILETRANSFER       = 6
       OTHERS                        = 7.

    IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

  ELSE.
    WRITE: / 'Datei', BINFILE1, 'konnte nicht geöffnet werden'.

  ENDIF ." Open dataset

Code: Alles auswählen.


* Lade alle Datei Namen in aus App Serververzeichnis
  CALL FUNCTION 'EPS_GET_DIRECTORY_LISTING'
    EXPORTING
     dir_name                     = lv_path
     file_mask                    = file_mask
*  IMPORTING
*    DIR_NAME                     =
*    FILE_COUNTER                 =
*    ERROR_COUNTER                =
   TABLES
     dir_list                    = lt_dir_list
   EXCEPTIONS
     invalid_eps_subdir           = 1
     sapgparam_failed             = 2
     build_directory_failed       = 3
     no_authorization             = 4
     read_directory_failed        = 5
     too_many_read_errors         = 6
     empty_directory_list         = 7
     OTHERS                       = 8.
<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Beitrag von brinki (ForumUser / 22 / 0 / 0 ) »
Verwendet doch die Standard Transaktion CG3Z und CG3Y für den Daten-upload und download. Den Pfad über die Tranaktion AL11 ermiteln.

Gruß Markus

Seite 1 von 1

Vergleichbare Themen

8
Antw.
3240
Views
Import/Export to Memory
von LostDarkness » 21.02.2019 09:09 • Verfasst in ABAP® für Anfänger
8
Antw.
6517
Views
Funktionsparameter (export import ...)
von bohne » 03.01.2005 15:14 • Verfasst in ABAP® für Anfänger
1
Antw.
7881
Views
Export/IMport der Favoriten
von Netterhesse » 22.01.2009 09:33 • Verfasst in SAP - Allgemeines
12
Antw.
6727
Views
Export/Import from Memory
von Steffi221185 » 12.11.2007 19:53 • Verfasst in ABAP® Core
4
Antw.
16894
Views
EXPORT/IMPORT itab FROM MEMORY ID
von miru77 » 06.08.2012 14:54 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

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.

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1670
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8272