Hallo ,
Ich möchte eine Semikolon getrennte Textdatei in sap hochladen und diese Werte in die interne Tabelle bringen.
Der folgende Code liest die txt Datei mit der GUI_UPLOAD-Funktion in eine interne Tabelle namens lt_tab Und lt_tab enthält Daten im Format 1 - nr, Vorname, Alter
Es ist eine andere interne Tabelle namens lt_data definiert, die die Daten von lt_tab liest und den Wert mit Semikolon (;) aufteilt und die Daten so speichert.
Nr. Vorname Alter
0010 Thomas 31
PARAMETERS: P_FNAME TYPE STRING OBLIGATORY
DATA lt_tab TYPE TABLE OF string.
Types: Begin of dtab,
Nr type ….
Vorname …..
Alter ……
End of dtab.
Da es sich hier offensichtlich um eine direkt aus der Schule stammende und noch dazu schlecht getarnte Aufgabenstellung handelt, weigere ich mich einen Beispielcode abzuliefern und verweise nur auf die unzähligen, ähnlich lautenden Beiträgen hier im Forum und im Netz.
In Zukunft bitte zuerst suchen und versuchen das Beispiel selbst zu lösen, denn nur so lernt man auch was dabei.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.
Dann gebe ich Dir mal einen Anhaltspunkt. Schau Dir den SPLIT-Befehl an. Du kannst über lt_tab einen LOOP machen und jede Zeile mit dem Split-Befehl an den Semikola zerlegen. Dafür brauchst Du eine Hilfstabelle, die dann jeden Spaltenwert als Zeile enthält.
Nach dem SPLIT machst Du einen LOOP über die Hilfstabelle in das Feldsymbol <hilfstabelle> und nutzt folgenden Kniff:
ASSIGN COMPONENT sy-tabix OF STRUCTURE wa_data TO FIELD-SYMBOL(<spalte_von_wa_data>).
<spalte_von_wa_data> = <hilfstabelle>.
APPEND wa_data TO lt_data.
(Es geht auch noch eleganter ohne die Workarea wa_data, aber für den Anfang ist es so wohl einfacher.)
Damit hast Du die wesentlichen Schritte. Daraus musst Du jetzt nur noch ein Programm stricken. :-)