TYPES: BEGIN OF ty_s_stxl_raw,
clustr TYPE stxl-clustr,
clustd TYPE stxl-clustd,
END OF ty_s_stxl_raw.
TYPES: ty_t_stxl_raw TYPE STANDARD TABLE OF ty_s_stxl_raw.
PARAMETERS: p_tdobj TYPE ttxob-tdobject DEFAULT 'TEXT'.
PARAMETERS: p_tdname TYPE stxh-tdname MATCHCODE OBJECT icl_stxh DEFAULT 'ADDRESS'.
PARAMETERS: p_tdid TYPE ttxid-tdid DEFAULT 'ST'.
START-OF-SELECTION.
* STXD SAPscript Text-Datei Header
SELECT FROM stxh
FIELDS
tdname,
tdobject,
tdid
WHERE tdobject = @p_tdobj
AND tdname = @p_tdname
AND tdid = @p_tdid
AND tdspras = @sy-langu
INTO TABLE @DATA(it_stxh).
IF sy-subrc = 0.
* STXD SAPscript Text-Datei Lines
SELECT FROM stxl
FIELDS
tdname,
clustr,
clustd
FOR ALL ENTRIES IN @it_stxh
WHERE relid = 'TX'
AND tdobject = @it_stxh-tdobject
AND tdname = @it_stxh-tdname
AND tdid = @it_stxh-tdid
AND tdspras = @sy-langu
INTO TABLE @DATA(it_stxl)
PACKAGE SIZE 3000. " Datenmenge bei SELECT begrenzen, um Laufzeitfehler zu vermeiden
DATA: it_stxl_raw TYPE ty_t_stxl_raw.
CLEAR: it_stxl_raw.
LOOP AT it_stxl ASSIGNING FIELD-SYMBOL(<stxl>).
APPEND VALUE ty_s_stxl_raw( clustr = <stxl>-clustr
clustd = <stxl>-clustd ) TO it_stxl_raw.
DATA(it_lines) = VALUE tline_t( ).
* Zeilen aus Datencluster lesen
IMPORT tline = it_lines FROM INTERNAL TABLE it_stxl_raw.
LOOP AT it_lines ASSIGNING FIELD-SYMBOL(<l>).
WRITE: / <stxl>-tdname, <l>-tdformat, <l>-tdline.
ENDLOOP.
ENDLOOP.
ENDSELECT.
ENDIF.
Links