Tabellenstruktur ändern

Getting started ... Alles für einen gelungenen Start.
2 Beiträge • Seite 1 von 1
2 Beiträge Seite 1 von 1

Tabellenstruktur ändern

Beitrag von dan (ForumUser / 1 / 0 / 0 ) »
Hallo,

ich habe folgendes Problem...

Ich habe ein Excel File, dessen Spalten, über ein vorhandes Programm in eine interne Tabelle (itab1) importiert wird. Die interne Tabelle schaut dann wie folgt aus :

matnr
achse1
achse2
achse3

Z.b.

1234 3,5 2,2 5

s.h. für jede Materialnummer gibt es eine Zeile und in dieser Zeile gibt es 3 Spalten für die jeweiligen Füllmengen der Achsen. Ich soll nun
die Struktur so abändern, dass für jede Achse eine eigene Zeile vorhanden ist...also so :

matnr
achse
menge

Z.b.

1234 a1 3,5
1234 a2 2,2
1234 a3 5


Ich muss also irgendwie die interne Tabelle itab1 in eine neue interne Tabelle itab2 konvertieren, die die richtige Struktur besitzt. Ich muss
also die horizontale Struktur in eine vertikale Abändern. Ich habe mir das wie folgt vorgestellt...

data:
n type integer.

do n times

wa_itab2-matnr = wa_itab1-matnr
wa_itab2-achse = Hier müsste ich die Feldbezeichnung der Spalte der itab1 angeben z.B. achse1
wa_itab2-menge = wa_itab1-achse(n)

append wa_itab2 to itab2

end loop

Ist das ein richtiges Vorgehen ? Das Problem ist, dass es in der itab1 auch Materialnummern gibt bei denen nicht jede Achse
vorhanden ist. Ich sollte also evtl. noch überprüfen wieviel Achsen vorhanden sind und nur für diese Zeilen in der itab2 erstellen.
Leider weiß ich auch nicht wie ich den Feldbezeichner der itab1 ermittle.

Wäre super wenn jemand mir hier etwas weiterhelfen könnte

Gruß und Danke
dan

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Tabellenstruktur ändern

Beitrag von UserBC (ForumUser / 61 / 0 / 1 ) »
Hallo Dan,

ich würde sagen: im Prinzip schon - aber nur im Prinzip

Wie wäre es mit:

field-symbols: <fs_importtab> type xxx.
data: exporttab type table of..., wa_exporttab like line of exporttab.

loop at importtab assigning <fs_importtab>.

wa_exporttab-matnr = <fs_importtab>-matnr.
wa_exporttab-achse = <fs_importtab>-achse1.
wa_exporttab-menge = <fs_importtab>-menge1.
append wa_exporttab to exporttab.

wa_exporttab-matnr = <fs_importtab>-matnr.
wa_exporttab-achse = <fs_importtab>-achse2.
wa_exporttab-menge = <fs_importtab>-menge2.
append wa_exporttab to exporttab.

wa_exporttab-matnr = <fs_importtab>-matnr.
wa_exporttab-achse = <fs_importtab>-achse3.
wa_exporttab-menge = <fs_importtab>-menge3.
append wa_exporttab to exporttab.
endloop.

Vorteil:
Durch die Auscodierung der 3 Achsen in einem Loop ist das Debugging im Fehlerfall einfacher.
Durch die Feldsymbole ist kein Transport der Daten aus der Tabelle in einen Arbeitsbereich notwendig.
Tabellen sind im Verwendungsnachweis (per SE11) und bei der Suche nach Tabellen vorhanden -> kann bei Änderungen nützlich sein.

Probleme bei deiner Lösung:

data:
n type integer.

do n times

wa_itab2-matnr = wa_itab1-matnr
wa_itab2-achse = Hier müsste ich die Feldbezeichnung der Spalte der itab1 angeben z.B. achse1 -> siehe Menge
wa_itab2-menge = wa_itab1-achse(n) -> vermutlich willst du einen dynamische Zugriff machen ?! -> Wird im Verwendungsnachweis der Tabelle SE11 nicht aufgeführt. -> Außerdem solltest du den Feldnamen erst dynamisch in einem String zusammenbauen und dann erst verwenden ( concatenate 'achse' n into STR_FELDNAME. ) dann kannst du STR_FELDNAME verwenden.

append wa_itab2 to itab2

end loop -> endloop ist falsch -> auf Do muss ein Enddo folgen.

Mit den kleinen Änderungen kannst du aber auch deine Lösung verwenden.

Gruss
UserBC

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1465
Views
Tabellenstruktur
von Ines » 12.10.2006 22:51 • Verfasst in ABAP® für Anfänger
3
Antw.
2651
Views
Tabellenstruktur geändert...
von SAPAlex » 25.04.2008 20:18 • Verfasst in ABAP® für Anfänger
2
Antw.
1795
Views
Dynamische Tabellenstruktur erstellen
von skill » 13.06.2007 10:19 • Verfasst in ABAP® für Anfänger
3
Antw.
1612
Views
Tabellenstruktur nach Parametereingabe
von robz » 15.11.2006 09:11 • Verfasst in ABAP Objects®
10
Antw.
5954
Views
Feld einer Tabellenstruktur auslesen
von f.weissenberger » 02.01.2020 07:50 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

RFC vs. ODATA
vor 4 Tagen von DeathAndPain 8 / 1798
FUBA 'HR_INFOTYPES_OPERATION'
vor 4 Tagen von DeathAndPain 2 / 1011
Frage zur redefinierten Methode
vor 6 Tagen von ralf.wenzel 12 / 2246

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

RFC vs. ODATA
vor 4 Tagen von DeathAndPain 8 / 1798
FUBA 'HR_INFOTYPES_OPERATION'
vor 4 Tagen von DeathAndPain 2 / 1011
Frage zur redefinierten Methode
vor 6 Tagen von ralf.wenzel 12 / 2246