Hallo,
ich möchte verschiedene Tabellen, z.B. MARA auf den Applikationsserver ausgeben.
Der dynamische Aufbau usw. klappt alles. Mein Problem liegt jetzt nur noch in dem Aubau der TXT-File auf dem Server. Da diese später wieder per LSMW in ein anderes System eingelesen werden sollen, bräuchte ich irgendein Trennzeichen für die Felder. Ich bin ich jetzt ratlos, wie ich das machen soll.
Hier mein Coding:
Über l_tabname bekommt man aus der Selektionsmaske die gew. Tabelle und
in l_fullpath steht das Verzeichnis wo es hin soll.
METHOD zm_dyn_tab .
DATA: wa_fcat TYPE lvc_s_fcat,
wa_rec type string,
it_fieldcatalog TYPE lvc_t_fcat,
new_table TYPE REF TO data,
new_line TYPE REF TO data.
FIELD-SYMBOLS: <l_table> TYPE table,
<lt_table> type any,
<l_line> TYPE ANY,
<l_field> TYPE ANY,
<x1> TYPE c,
<x2> TYPE string.
*------------------------------------------------------
* Zuweisen der dynamischen Tabelle
*------------------------------------------------------
ASSIGN new_table->* TO <l_table>.
*------------------------------------------------------
* Select ausführen und Datensätze in Tabelle stellen
*------------------------------------------------------
SELECT *
FROM (l_tabname)
INTO TABLE <l_table>.
*------------------------------------------------------
* Dataset öffnen und Tabelle auf Applikationsserver speichern
*------------------------------------------------------
OPEN DATASET l_fullpath FOR OUTPUT IN TEXT MODE encoding default type 'UNIX' .
IF sy-subrc <> 0.
EXIT.
ENDIF.
* LOOP AT <l_table> assigning <lt_table>.
* TRANSFER <lt_table> TO l_fullpath. "Sätze in neue File kopieren
* ENDLOOP.
LOOP AT <l_table> assigning <lt_table>.
ASSIGN <lt_table> TO <x1> CASTING.
ASSIGN ('WA_REC') TO <x2> CASTING.
*** Zuweisung über gecastete Strukturen
<x2> = <x1>.
TRANSFER wa_rec TO l_fullpath. "Sätze in neue File kopieren
ENDLOOP.