Hall :D
Also bei uns gibt es einen Job, der einen Report aufruft. Dieser wiederum ruft über den FuBa RSAQ_QUERY_CALL ein Query auf. Übergeben werden hier unter anderem das Query, die Benutzergruppe, Variante (Aufruf FuBa).
Für den Aufruf des Reports werden die RSAQ_QUERY_CALL Parameter und ein Dateipfad mitgegeben. Das Ergebnis des FuBas wird dann in einer iTab zurück geliefert und im Anschluss in das Dateisystem geschrieben.
Hierfür zuerst die Spaltenanzahl ermitteln:
FIELD-SYMBOL:
<datatab> type table,
<dataline> type any,
<comp> type any.
data:
counter type i,
last_col type i,
text_line type c length 1000,
text_field type c length 100.
assign itab_from_fuba->* to <datatab>.
read table <datatab> assigning <dataline> index 1.
counter = 0.
do.
counter = counter + 1.
assign component counter of structure <dataline> to <comp>.
if sy-subrc <> 0.
last_col = counter - 1.
exit.
endif.
enddo.
und dann mit
* Datei zum übertragen öffnen
open dataset filename for output in text mode encoding default.
" Zeile für Zeile
loop at <datatab> assigning <dataline>.
clear textline.
counter = 1.
" Spalte für Spalte
while counter < last_col.
clear text_field.
assign component counter of structure <dataline> to <comp>.
if sy-subrc = 0.
write <comp> to text_field.
" Damit die erste Spalte keinen Seperator vorne stehen hat
if counter = 1.
text_line = text_field.
else.
concatenate text_line text_field into text_line separated by ';'.
endif.
endif.
counter = counter + 1.
endwhile.
transfer text_line to filename.
endloop.
So in der Art müsste sich das lösen lassen.
Hat jemand ne Idee, wie ich das html kleiner bekomm?
Doofe Frage, aber hast du schon mal alle nicht benötigten Spalten weg gelassen? 7k Zeilen und 40MB erscheint mir da doch etwas seeeeeeehr groß.