Append Table

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

Append Table

Beitrag von jeyloeso (ForumUser / 29 / 6 / 0 ) »
Hallo Zusammen,
in der Tabelle bkpf habe ich nur zwei Einträge, die raus kommen sollen. Aber mit der folgenden Code bekeomme ich jeden Eintrag 32 mal, also insgesamt habe ich 64.
Was ist hier falsch bitte?

Code: Alles auswählen.

SELECT kunnr from znr_kun_tab INTO (a_kunnr).

    SELECT * FROM bkpf INTO w_bkpf
      WHERE bukrs = pbukrs
      AND gjahr = a_gjahr
      AND blart = a_blart
      AND cpudt BETWEEN a_cpudt AND b_cpudt.

      SELECT * FROM bseg INTO w_bseg
        WHERE bukrs = pbukrs
        AND belnr = w_bkpf-belnr
         AND gjahr = a_gjahr
         AND buzei = '1'.
*     and  kunnr = a_kunnr.
        wa_beleg-belnr = w_bkpf-belnr.
        wa_beleg-cpudt = w_bkpf-cpudt.
        wa_beleg-xblnr = w_bkpf-xblnr.
        wa_beleg-zlspr = w_bseg-zlspr.
        wa_beleg-kunnr = w_bseg-kunnr.
        if wa_beleg-kunnr IS INITIAL.
          SELECT SINGLE lifnr FROM bseg INTO wa_beleg-kunnr
            WHERE   bukrs = pbukrs
            AND belnr = w_bkpf-belnr
            AND gjahr = a_gjahr
            AND buzei = '1'.
        else.
          wa_beleg-kunnr = w_bseg-kunnr.
        ENDIF.
      ENDSELECT.
              APPEND wa_beleg TO t_beleg.
        CLEAR wa_beleg.

    ENDSELECT.
  ENDSELECT.

  LOOP AT t_beleg INTO wa_beleg.
Bitte dringende Vorschläge.

Schöne Grüße.

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


Re: Append Table

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
jeyloeso hat geschrieben:Was ist hier falsch bitte?
Die Schachtelung ist nicht korrekt.

Für jeden Kunden, suchst du jeden Buchhaltungsbeleg und dann jede Zeile des Buchhaltungsbeleg. Für jede Buchhaltungsbelegposition machst du einen APPEND.

Code: Alles auswählen.

      ENDSELECT.  "BSEG
              APPEND wa_beleg TO t_beleg.
        CLEAR wa_beleg.

    ENDSELECT. "BKPF
  ENDSELECT. "ZNR_KUN_TAB
Gruß Hendrik

Re: Append Table

Beitrag von casman (Specialist / 420 / 1 / 63 ) »
Für jeden Kunden, suchst du jeden Buchhaltungsbeleg und dann jede Zeile des Buchhaltungsbeleg. Für jede Buchhaltungsbelegposition machst du einen APPEND.
jeyloeso selektiert die BSEG mit BUZEI = 1, somit kriegt er pro BKPF-Eintrag genau einen BSEG-Eintrag und damit auch nur eine Zeile in seiner Belegtabelle. Trotzdem ist die Schachtelung nicht sinnvoll. :)

Das Problem ist der Select über die Kundentabelle, welcher zudem aktuell vollkommen sinnfrei ist, weil die KUNNR nirgends verwendet wird. Ich nehme an diese Tabelle hat 32 Einträge?

Der zweite Select auf die BSEG ist auch nicht sinnvoll, ein einfaches wa_beleg-kunnr = w_bseg-lifnr. reicht. Generell würde ich hier nicht mit SELECT...ENDSELECT arbeiten, sondern mit SELECT SINGLE.

@jeyloeso: Was willst du denn eigentlich mit der ganzen Sache erreichen, dann kann man Dir vielleicht noch ein paar Tipps geben?

Folgende Benutzer bedankten sich beim Autor casman für den Beitrag:
jeyloeso


Re: Append Table

Beitrag von jeyloeso (ForumUser / 29 / 6 / 0 ) »
Hallo Casman,

vielen Dank für deine Hilfe, habe ich es dank deiner Hilfe geschafft.

Gruß

Seite 1 von 1

Vergleichbare Themen

6
Antw.
2848
Views
append...where...in...?
von dima » 31.05.2005 14:36 • Verfasst in ABAP® für Anfänger
4
Antw.
1400
Views
APPEND Fall
von il.ost » 04.04.2019 11:55 • Verfasst in ABAP® für Anfänger
4
Antw.
18716
Views
append mit corresponding fields?
von Thanatos82 » 26.09.2012 13:25 • Verfasst in ABAP® für Anfänger
10
Antw.
16569
Views
Append Struktur
von Gast » 06.04.2005 10:38 • Verfasst in ABAP® für Anfänger
5
Antw.
5135
Views
append KNA1
von JohnLocklay » 23.01.2018 14:14 • Verfasst in ABAP® Core

Ü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 15 Stunden von Bright4.5 1 / 318
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1960
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8560