Zwei interne Tabellen zusammenführen

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

Zwei interne Tabellen zusammenführen

Beitrag von _Manfred_ (ForumUser / 2 / 0 / 0 ) »
Hallo,

Ich möchte in einer Liste ausgeben, wieviele Buchungszeilen ein Mitarbeiter in einem bestimmten Zeitraum in FI gebucht hat - Also eine Liste in der Form: Username, Belegnummer, Anzahl Buchungszeilen auf dem Beleg.

Ich habe dazu die entsprechenden Daten aus den Tabellen bkpf und bseg selektiert und in zwei interne Tabellen geschrieben.

Jetzt habe ich aber ein Problem: Wenn ich einen Loop über die beiden internen Tabellen mache, erhalte ich in der Liste zu viele Ergebnisse - ich habe anscheinend die Loops falsch geschachtelt. Kann mir bitte jemand sagen, wie ich die Loop-Schleifen richtig angebe? Vielen Dank!!!!!!!

Mein Coding schaut so aus:

Code: Alles auswählen.

SELECT usnam blart belnr cpudt gjahr monat FROM bkpf
  INTO CORRESPONDING FIELDS OF TABLE it_buchung
  WHERE usnam IN so_user
  AND blart IN so_blart
  AND cpudt IN so_cpudt
  AND gjahr IN so_gjahr
  AND monat IN so_monat
  GROUP BY usnam cpudt blart belnr gjahr monat.

  IF sy-subrc = 0.

    SELECT  belnr buzei
    FROM bseg
    INTO CORRESPONDING FIELDS OF TABLE it_buzei
    FOR ALL ENTRIES IN it_buchung
    WHERE belnr = it_buchung-belnr
    AND gjahr = it_buchung-gjahr.

  ENDIF.

* Zusammenfügen der internen Tabellen zu einer ITab
  LOOP AT it_buchung INTO wa_buchung.
    LOOP AT it_buzei INTO  wa_buzei.
      WRITE: / wa_buchung-usnam,
               wa_buchung-belnr,
               wa_buzei-buzei.
    ENDLOOP.
  ENDLOOP.

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


Beitrag von cosmo (Specialist / 175 / 0 / 0 ) »
Hallo!

Du hast beim inneren Loop vergessen, eine Einschränkung zu machen, dass Du hier nur Belege, die zum Datensatz des äußeren Loops gehören, sehen willst. Es muss so aussehen:

Code: Alles auswählen.

* Zusammenfügen der internen Tabellen zu einer ITab 
  LOOP AT it_buchung INTO wa_buchung. 
    LOOP AT it_buzei INTO  wa_buzei
            where belnr = wa_buchung-belnr.
      WRITE: / wa_buchung-usnam, 
               wa_buchung-belnr, 
               wa_buzei-buzei. 
    ENDLOOP. 
  ENDLOOP.
Gruß Jörg

Danke!

Beitrag von Gast ( / / 0 / 3 ) »
Hallo Jörg,

vielen Dank!!.

Manfred

Seite 1 von 1

Vergleichbare Themen

10
Antw.
9020
Views
zwei interne Tabellen zusammenführen => ALV
von Mark33 » 22.08.2012 07:00 • Verfasst in ABAP® für Anfänger
4
Antw.
9761
Views
Interne Tabellen zusammenführen
von Basler84 » 01.08.2018 16:49 • Verfasst in ABAP® für Anfänger
6
Antw.
3851
Views
Zwei interne Tabellen verarbeiten
von gogi » 20.11.2007 11:14 • Verfasst in ABAP® für Anfänger
5
Antw.
4001
Views
Zwei interne Tabellen mit einem ALV ausgeben
von ABAP_DEV » 29.11.2016 10:37 • Verfasst in ABAP® für Anfänger
4
Antw.
1557
Views
Zwei Datenbanktabellen zusammenführen
von dominoblau » 22.01.2021 11:41 • Verfasst in ABAP® für Anfänger

Ü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 2 Tagen von Bright4.5 1 / 748
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2373
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8959