SAP-DB-Tabelleninhalt to MS-Excel

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

SAP-DB-Tabelleninhalt to MS-Excel

Beitrag von nkuhn (ForumUser / 30 / 0 / 0 ) »
Hallo zusammen,

Kann mir jemand einen guten zu gebrauchenden Funktionsbaustein nennen, mit welchem ich Daten aus einer Datenbanktabelle im SAP in ein neues Excel-File schreiben kann?
Das File sollte bei jeder Ausführung neu erstellt werden, und wenn möglich sogar mit der Laufzeit sowie dem Laufzeitdatum versehen werden im Namen. Ausserdem sollte der Speicherort für das Excel-File ausgewählt werden können.

Ist das irgendwie möglich? Gibt es einen Funktionsbaustein für dieses Problem?

Vielen Dank für Eure Hilfe.

Mit freundlichen Grüssen

Nicolas Kuhn

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


Beitrag von aru (ForumUser / 2 / 0 / 0 ) »
Hallo Nicolas,
FB GUI-Download, Über Parameters --> Speicherort(filename) an den Du sy-datum und sy-time hängst. Meinst Du mit der Laufzeit die Dauer die Dein Programm benötigt, vergiß es :wink:
aru

Beitrag von nkuhn (ForumUser / 30 / 0 / 0 ) »
Hallo aru,

Verstehe ich das richtig, dass ich mit dem FUBA "GUI DOWNLOAD" meine Problemstellung lösen kann?

Hast du ein Code Beispiel dazu? Zum Beispiel indem sy-datum, sy-time schon eingebunden ist?

Vielen Dank.

Nicolas Kuhn

Beitrag von JHM (Top Expert / 1212 / 2 / 202 ) »
nkuhn hat geschrieben:Hast du ein Code Beispiel dazu? Zum Beispiel indem sy-datum, sy-time schon eingebunden ist?
Ist jetzt ohne FuBa sondern über eine Klasse gelöst, aber sollte dein Problem lösen. Das ganze ist aus einem 6.4 Release, in kleineren Releases wird es wahrscheinlich Probleme machen. Fehlerhandling ist nicht programmiert:

Code: Alles auswählen.

REPORT  z_db_to_file.

* Für den Dynamischen DB-Zugriff
FIELD-SYMBOLS: <table> TYPE ANY TABLE.

* Dynamische Daten
DATA: gr_table TYPE REF TO   data.

* Für den GUI-Download
DATA:  g_file TYPE string.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: p_table      TYPE tabname,             "Tabelle die gelesen wird
            p_count      TYPE i DEFAULT 100,       "Anzahl Datensätze
            p_path(1024) TYPE c DEFAULT 'c:\temp\',"Source
            p_file(1024) TYPE c DEFAULT 'test'.    "Dateiname ohne Dateiendung
SELECTION-SCREEN END OF BLOCK b1.


START-OF-SELECTION.

* Erstmal Data dynamisch erzeugen
  CREATE DATA gr_table TYPE TABLE OF (p_table).

* Um auf die Daten zu zugreifen die Referenz auf ein Feldsymbole umswitchen
  ASSIGN gr_table->* TO <table>.

* Daten von DB lesen
  SELECT *
  FROM (p_table)
  INTO TABLE <table>
  UP TO p_count ROWS.

* Daten in Datei schreiben

* Pfad / Dateiname basteln
  CONCATENATE p_path
              p_file
              '_'
              sy-datum
              '_'
              sy-uzeit
              '.CSV'
              INTO g_file.
* Leerzeichen löschen
  CONDENSE g_file.
  CALL METHOD cl_gui_frontend_services=>gui_download
    EXPORTING
*    BIN_FILESIZE              =
      filename                  = g_file
*    FILETYPE                  = 'ASC'
*    APPEND                    = SPACE
       write_field_separator     = 'X'              "kommagetrennt
*    HEADER                    = '00'
*    TRUNC_TRAILING_BLANKS     = SPACE
*    WRITE_LF                  = 'X'
*    COL_SELECT                = SPACE
*    COL_SELECT_MASK           = SPACE
*    DAT_MODE                  = SPACE
*    CONFIRM_OVERWRITE         = SPACE
*    NO_AUTH_CHECK             = SPACE
*    CODEPAGE                  = SPACE
*    IGNORE_CERR               = ABAP_TRUE
*    REPLACEMENT               = '#'
*    WRITE_BOM                 = SPACE
*    TRUNC_TRAILING_BLANKS_EOL = 'X'
*    WK1_N_FORMAT              = SPACE
*    WK1_N_SIZE                = SPACE
*    WK1_T_FORMAT              = SPACE
*    WK1_T_SIZE                = SPACE
*  IMPORTING
*    FILELENGTH                =
    CHANGING
      data_tab                  = <table>
*  EXCEPTIONS
*    FILE_WRITE_ERROR          = 1
*    NO_BATCH                  = 2
*    GUI_REFUSE_FILETRANSFER   = 3
*    INVALID_TYPE              = 4
*    NO_AUTHORITY              = 5
*    UNKNOWN_ERROR             = 6
*    HEADER_NOT_ALLOWED        = 7
*    SEPARATOR_NOT_ALLOWED     = 8
*    FILESIZE_NOT_ALLOWED      = 9
*    HEADER_TOO_LONG           = 10
*    DP_ERROR_CREATE           = 11
*    DP_ERROR_SEND             = 12
*    DP_ERROR_WRITE            = 13
*    UNKNOWN_DP_ERROR          = 14
*    ACCESS_DENIED             = 15
*    DP_OUT_OF_MEMORY          = 16
*    DISK_FULL                 = 17
*    DP_TIMEOUT                = 18
*    FILE_NOT_FOUND            = 19
*    DATAPROVIDER_EXCEPTION    = 20
*    CONTROL_FLUSH_ERROR       = 21
*    NOT_SUPPORTED_BY_GUI      = 22
*    ERROR_NO_GUI              = 23
*    others                    = 24
          .
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
Gruß Hendrik

Beitrag von nkuhn (ForumUser / 30 / 0 / 0 ) »
Vielen Dank. Kann ich so ganz gut gebrauchen.

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1843
Views
Tabelleninhalt ausgeben
von tech » 28.03.2008 10:27 • Verfasst in ABAP® für Anfänger
0
Antw.
2412
Views
Tabelleninhalt kopieren
von Diesel83 » 19.03.2011 12:01 • Verfasst in ABAP® für Anfänger
1
Antw.
2191
Views
Tabelleninhalt auf BSP ausgeben
von brooks » 07.12.2005 12:25 • Verfasst in Web-Dynpro, BSP + BHTML
2
Antw.
1601
Views
Tabelleninhalt downloaden
von Matthias_L. » 25.09.2006 12:03 • Verfasst in ABAP® für Anfänger
1
Antw.
2538
Views
Drucken Tabelleninhalt
von dirk.vdh » 09.06.2014 19:42 • Verfasst in Web-Dynpro, BSP + BHTML

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Banf anlegen
vor 29 Minuten von Manfred K. 1 / 27
Banf anlegen
vor 30 Minuten von Manfred K. 1 / 28
IBAN und BUT0BK
vor 3 Tagen von waltersen gelöst 10 / 12217
SAPGui 8.00 32 Bit vs 64 Bit
vor 5 Tagen von DeathAndPain 3 / 5021

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

Banf anlegen
vor 29 Minuten von Manfred K. 1 / 27
Banf anlegen
vor 30 Minuten von Manfred K. 1 / 28
IBAN und BUT0BK
vor 3 Tagen von waltersen gelöst 10 / 12217
SAPGui 8.00 32 Bit vs 64 Bit
vor 5 Tagen von DeathAndPain 3 / 5021

Unbeantwortete Forenbeiträge

Banf anlegen
vor 29 Minuten von Manfred K. 1 / 27
Banf anlegen
vor 30 Minuten von Manfred K. 1 / 28
Speichern Popup in MM42 verhindern
vor 6 Tagen von Noodl 1 / 4258