gruppieren von internen Tabellen

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

gruppieren von internen Tabellen

Beitrag von debianfan (ForumUser / 84 / 64 / 0 ) »
Guten Morgen,

ich habe mich völlig verrant & bin grade etwas betriebsblind.

Ein Baustein gibt eine interne Tabelle aus:


Datum Name Betrag
1.05.2017 Müller 500
12.12.2017 Meier 70
01.05.2017 Schmidt 50
22.04.2017 Schulze 1200
12.12.2017 Haase 210

Jetzt müssen die Beträge zusammengerechnet werden, auf Basis der Datumsangaben.

Herauskommen würde dann hier:

01.05.2017 - 550
22.04.2017 - 1200
12.12.2017 - 280

Ich würde das normalerweise mit select sum betrag machen - aber ich habe ja (in diesem Fall) 3 unterschiedliche Datümer, d.h. ich müsste erst die Datümer gruppieren und dann aus der internen Tabelle selektieren.

...ich hoffe ich habe mich verständlich ausgedrückt :-/

gruß & danke für hilfreiche Informationen
Ich weiß viel - aber nicht alles - deswegen lerne ich gern dazu & bin für Hinweise von erfahrenen ITlern immer dankbar.

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


Re: gruppieren von internen Tabellen

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Ab 7.40 gibt es den Befehl LOOP AT ... GROUP BY ...
Davor gab es die Möglichkeit über Sortierung nach dem Gruppierungskriterium und einem einfachen LOOP AT ...

Code: Alles auswählen.

DATA: 
  ld_date TYPE d
  ld_sum  TYPE i.
SORT lt_data_raw BY date.
LOOP AT data_raw ASSIGNING <ls_data>.
  IF <ls_data>-date NE ld_date.
* Neue Gruppe
    IF ld_sum IS NOT INITIAL.
      WRITE: ld_datum, ld_sum.
    ENDIF.    
    CLEAR ld_sum.
  ENDIF.
  ld_sum = ld_sum + <ls_data>-value.
ENDLOOP.
IF ld_sum IS NOT INITIAL.
* Die letzte Gruppe auch ausgeben
  WRITE: ld_datum, ld_sum.
ENDIF.
Es gibt auch noch den Befehl AT NEW aber dieser wertet auch alle Felder die "links" des zu betrachtenden Feldes stehen aus, was mitunter zu ungewünschten Seiteneffekten führt.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
debianfan

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.

ECC: 6.18
Basis: 7.50

Re: gruppieren von internen Tabellen

Beitrag von DeathAndPain (Top Expert / 1939 / 257 / 412 ) »
Ich würde das normalerweise mit select sum betrag machen
Das kann nichts bringen, denn mit SELECT suchst Du in Datenbanktabellen, aber Dein Baustein liefert Dir ja eine interne Tabelle zurück.

Ich würde bei dem Problem spontan an den COLLECT-Befehl denken. Lies Dir man dessen Online-Hilfetext durch. Ansonsten kann man es natürlich auch "zu Fuß" machen, so wie a-dead-trousers es beschrieben hat.

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
debianfan


Re: gruppieren von internen Tabellen

Beitrag von deejey (Specialist / 422 / 129 / 45 ) »
select sum(betrag) into table itab
from ztabelle
group by datumsfeld

sry, FuBa liefert itab, insofern ist das natürlich Unsinn :D

Folgende Benutzer bedankten sich beim Autor deejey für den Beitrag:
debianfan


Re: gruppieren von internen Tabellen

Beitrag von debianfan (ForumUser / 84 / 64 / 0 ) »
danke - ich konnte das Problem lösen :-)
Ich weiß viel - aber nicht alles - deswegen lerne ich gern dazu & bin für Hinweise von erfahrenen ITlern immer dankbar.

Seite 1 von 1

Vergleichbare Themen

3
Antw.
3630
Views
Gruppieren / Summieren in internen Tabellen
von eddi12 » 19.02.2008 12:10 • Verfasst in ABAP® für Anfänger
30
Antw.
11192
Views
Werte einer internen Tabelle gruppieren und auslesen
von bohne » 07.03.2006 21:01 • Verfasst in ABAP® für Anfänger
3
Antw.
3985
Views
feldkatalog von internen tabellen?
von ismailer » 17.01.2005 11:47 • Verfasst in ABAP Objects®
5
Antw.
2867
Views
feldkatalog von internen tabellen?
von ismailer » 18.01.2005 13:50 • Verfasst in ABAP® Core
3
Antw.
2199
Views
Inhaltübergabe bei internen Tabellen
von castadiva » 22.10.2007 12:47 • Verfasst in ABAP® für Anfänger

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 13 Stunden von Bright4.5 1 / 269
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1908
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8511