interne Tabelle als csv-Datei auf Server speichern
Posted:
Tue Sep 01, 2015 5:47 am
by Meike1063
Moin zusammen,
der oft erwähnte Baustein SAP_CONVERT_TO_CSV_FORMAT existiert in meinem System hier nicht.
Ich hab mir ein Testprogramm über "open dataset" geschrieben - aber das ist nicht das ware da es keine dynamischen Strukturen erkennt.
Jetzt ist die Frage, ob es eine Alternative gibt?
gruß
Sebastian
Re: interne Tabelle als csv-Datei auf Server speichern
Posted:
Wed Sep 02, 2015 7:08 am
by Tron
Moin Sebastian.
Ich würde mit dem Baustein RFC_READ_TABLE und semicolon als delimiter die Daten auf dem Server speichern.
Beispiel:
- Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
*&---------------------------------------------------------------------*
*& Report YBC_WRITE_ITAB_TO_SERVER
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ybc_write_itab_to_server
.
PARAMETERS i_tab
TYPE dd02l
-tabname
DEFAULT 'SFLIGHT'. PARAMETERS i_file
TYPE rcgiedial
-iefile
LOWER CASE DEFAULT '\\SERVER\sapmnt\trans\tmp\000.csv'.
lt_options TYPE TABLE OF rfc_db_opt,
lt_fields TYPE TABLE OF rfc_db_fld,
lt_data TYPE TABLE OF tab512,
ls_data TYPE tab512.
CALL FUNCTION 'RFC_READ_TABLE'
EXPORTING
query_table = i_tab
delimiter = ';'
* NO_DATA = ' '
* ROWSKIPS = 0
* ROWCOUNT = 0
options = lt_options
EXCEPTIONS
table_not_available = 1
table_without_data = 2
option_not_valid = 3
field_not_valid = 4
not_authorized = 5
data_buffer_exceeded = 6
OTHERS = 7.
IF sy
-subrc
<> 0 OR lt_data
[] IS INITIAL.
* open dataset for writing
OPEN DATASET i_file FOR OUTPUT IN TEXT MODE
ENCODING NON-UNICODE.
IF NOT sy
-subrc
IS INITIAL. EXIT. "RAISE open_failed.
LOOP AT lt_data
INTO ls_data
. * write data in file
CLOSE DATASET i_file.
* DELETE DATASET i_file.
- GeSHi ©
LG Jens