Daten vertikal ausgeben

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

Daten vertikal ausgeben

Beitrag von seco_neu (ForumUser / 16 / 0 / 0 ) »
Hallo zusammen
ich habe ein problem bei der Ausgabe der Daten aus einer itab.
Also ich gebe ein Besipiel was ich hier genauer machen möchte.

Meine it_tab sieht so aus:

table: it_tab

Code: Alles auswählen.

id   date   amnt
011  2007   1200
011  2008   1400
011  2009   6700
011  2010   3500
012  2007   ---
013  2007   3000
013  2008   1300
014  2007   1200
014  2008   ---
014  2009   9000
015  2007   2500
aber ich möchte die daten in meine ausgabe tabelle t_output so haben:

table: t_output

Code: Alles auswählen.

id  name  date amnt  date1  amnt1 date2  amnt2 date3  amnt3
011 jx    2007 1200  2008   1400  2009   6700  2010   3500
012 tx    --
014 gx    2007 3000  2008   --    2009   9000   --    ---
015 hx    2007 2500
t_output hat schon eine daten wie id und name etc.

Hier ist was ich bis jetzt gemacht habe:

Code: Alles auswählen.

clear w_output.
loop at t_output into w_output.
clear w_itab.
loop at it_tab into w_itab where id = w_output-id.
case sy-tabix.
WHEN '1'.
w_output-date = w_itab-date
w_output-amnt = w_itab-amnt
WHEN '2'.
w_output-date1 = w_itab-date
w_output-amnt1 = w_itab-amnt

WHEN '3'.
w_output-date2 = w_itab-date
w_output-amnt2 = w_itab-amnt

WHEN '4'.
w_output-date3 = w_itab-date
w_output-amnt3 = w_itab-amnt
endcase.
modify t_output from w_output.
endloop.
endloop.

Könnte mir bitte jemand sagen, wie ich das problem beseitigen könnte?
Vielen Danke
Dani.

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


Beitrag von comi_3 (ForumUser / 5 / 0 / 0 ) »
Hallo

Sy-tabix ist nur einmal eins, dann 5 und so weiter
separaten Zähler mitlaufen lassen und am Anfang immer initialisieren

Schönes WE :P
Comi

Beitrag von seco_neu (ForumUser / 16 / 0 / 0 ) »
Vielen Dank Comi.
Koenntest du bitte ein Beispiel zeigen wie das gemacht wird? Ich bin ein Anfaenger und habe nicht so richtig verstanden was du gemeinst hast.

Danke
Dani

Beitrag von comi_3 (ForumUser / 5 / 0 / 0 ) »
data: z_tabix like sy-tabix.

und vor dem Loop at itab z_tabix = 0.
und als erstes im Loop z_tabix + 1.
und den case auf z_tabix.

ich hoffe ich habe mich verständlich ausgedrückt
denn ich bin dann jetzt wech :P

Comi

Beitrag von seco_neu (ForumUser / 16 / 0 / 0 ) »
Hallo Comi,

vielen Dank. Es funktioniert. Ich habe aber eine kleine Frage. Wie haette ich gemacht, wenn ich die sy-tabix dynamisch ermitteln moechte? Angenommen ich kenne die Anzahl der id in der it_tab nicht, wie haette ich gemacht, dass die Anzahl der ids erst im laufzeit ermitteln weden kann?

Danke und schoenes WE.
Dani.

Beitrag von brinam (Specialist / 111 / 0 / 0 ) »
Hallo Dani,
seco_neu hat geschrieben:Wie haette ich gemacht, wenn ich die sy-tabix dynamisch ermitteln moechte? Angenommen ich kenne die Anzahl der id in der it_tab nicht, wie haette ich gemacht, dass die Anzahl der ids erst im laufzeit ermitteln weden kann?
Was verstehst Du unter "dynamisch ermitteln"? sy-tabix gibt Dir zur Laufzeit immer genau an, auf welchem Datensatz der internen Tabelle Du Dich gerade befindest. Das ist ja im Prinzip schon dynamisch.
In Deinem Original-Coding hattest Du einen verschachtelten loop, d.h. beim äußeren loop ist sy-tabix beim 1. Datensatz = 1, dann im inneren loop = x, y oder z, je nachdem, welche Datensätze der internen Tabelle Deiner where-Bedingung entsprechen.

Vielleicht aber noch eine andere (kürzere) Variante für die Anordnung der Daten auf der Liste:
Du könntest die itab auch nach der id sortieren und dann immer beim Gruppenwechsel der id eine neue Zeile ausgeben, also:

Code: Alles auswählen.

SORT t_output BY id.
CLEAR w_output. 
LOOP AT t_output INTO w_output
  AT NEW id.
    ULINE. " Damit ein Zeilenumbruch gemacht wird
    WRITE:  w_output-id, w_output-name.
  ENDAT.
  WRITE:  w_output-date, w_output-amnt.
ENDLOOP.
Viele Grüße
Britta

Seite 1 von 1

Vergleichbare Themen

5
Antw.
2601
Views
Transponierte Daten in ALV ausgeben
von Niels » 24.07.2015 14:15 • Verfasst in ABAP® Core
6
Antw.
2634
Views
Daten aus mehreren Tabellen ausgeben
von thr-hn » 25.03.2014 09:14 • Verfasst in ABAP® für Anfänger
2
Antw.
1677
Views
mit method : get_... daten lesen und ausgeben?
von Rea » 06.12.2014 19:59 • Verfasst in ABAP Objects®
13
Antw.
17505
Views
Daten als Text- oder XML-Datei aus SAP ausgeben
von lenhart08 » 17.09.2008 09:24 • Verfasst in ABAP® für Anfänger
4
Antw.
2992
Views
cl_gui_alv_grid - vertikal scrollen
von brunotti » 22.06.2007 14:20 • Verfasst in ABAP Objects®

Über diesen Beitrag


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

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.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 5 Stunden von Bright4.5 1 / 103
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1744
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8348