Interne Tabellen vergleichen

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

Interne Tabellen vergleichen

Beitrag von Micha_ela (ForumUser / 29 / 0 / 0 ) »
Hallo ,

ich habe 2 interne Tabellen:

in der Tabelle Tab1 stehen Artikelnummern, die für ein Gerät gebraucht werden
in Tabelle 2 stehen Pärchen von Artikeln.
ich muß für alle Pärchen aus Tabelle 2 überprüfen, ob sie in Tabelle 1 vorhanden sind.


int. Tabelle 1 : int. Tabelle 2 : ART 1 ART 11 -> nicht drin
ART 1 ART 3 ART 4 -> drin
ART 2
ART 3
ART 4
ART 5

wie mache ich das möglichst elegant ?
Vielen Dank!

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


Re: Interne Tabellen vergleichen

Beitrag von A6272 (Specialist / 238 / 8 / 36 ) »
Hallo,
wie ist der gesamte Kontext dazu?

Willst Du Tabelle 2 in einer Spalte einen Wert haben für "Hurra ich bin in Tabelle1" / "Mist ich bin nicht in Tabelle1"?

Oder willst Du nach der Überprüfung direkt eine Folgeaktivität starten?

oder...

Re: Interne Tabellen vergleichen

Beitrag von Micha_ela (ForumUser / 29 / 0 / 0 ) »
A6272 hat geschrieben:
21.06.2024 08:02
Hallo,
wie ist der gesamte Kontext dazu?

Willst Du Tabelle 2 in einer Spalte einen Wert haben für "Hurra ich bin in Tabelle1" / "Mist ich bin nicht in Tabelle1"?

Oder willst Du nach der Überprüfung direkt eine Folgeaktivität starten?

oder...
Ich will eine Folgeaktivität starten

Re: Interne Tabellen vergleichen

Beitrag von Lukas Sanders (ForumUser / 70 / 7 / 34 ) »
Hallo,

eine einfache Möglichkeit wäre eine Schleife über Tabelle 2, in welcher für jede Zeile geprüft wird, ob ein entsprechender Eintrag vorhanden ist.

Code: Alles auswählen.

LOOP AT itab2 REFERENCE INTO DATA(lr_itab2). 
  IF NOT line_exists( itab1[ artikelnummer = lr_itab1->artikel1 ] ) OR NOT line_exists( itab1[ artikelnummer = lr_itab1->artikel2 ] ). 
    " einer der beiden Artikel existiert nicht in Tabelle 1, irgendwas tun... 
  ENDIF. 
ENDLOOP. 

Re: Interne Tabellen vergleichen

Beitrag von Micha_ela (ForumUser / 29 / 0 / 0 ) »
Oh, Mann, vielen Dank, den line_exists hate ich nicht auf dem Schirm....

Re: Interne Tabellen vergleichen

Beitrag von msfox (Specialist / 386 / 58 / 76 ) »
Micha_ela hat geschrieben:
24.06.2024 10:53

Code: Alles auswählen.

LOOP AT itab2 REFERENCE INTO DATA(lr_itab2). 
  IF NOT line_exists( itab1[ artikelnummer = lr_itab1->artikel1 ] ) OR NOT line_exists( itab1[ artikelnummer = lr_itab1->artikel2 ] ). 
    " einer der beiden Artikel existiert nicht in Tabelle 1, irgendwas tun... 
  ENDIF. 
ENDLOOP. 
Ist das performant?
Hier sucht das Programm im schlimmsten Fall 2x squentiell in itab1 (keine SORTED TABLE angenommen).
Leider kann man in einem READ TABLE* keine OR verwenden, sondern nur in einem LOOP. Bei Verwendung eines LOOPs ist das Coding zwar länger, dafür muss das Programm nur max. 1x durch die itab1.
--
*LINES_EXISTS ist ja quasi das verkürzte READ TABLE, nur das man den SY-Subrc nicht auswerten muss. In dem Fall bräuchte man 2 READ TABLE, darum LINE_EXISTS()

Seite 1 von 1

Vergleichbare Themen

3
Antw.
1714
Views
4
Antw.
3664
Views
2 interne Tabellen vergleichen
von swonny » 06.11.2006 16:12 • Verfasst in ABAP® für Anfänger
12
Antw.
8203
Views
2 interne Tabellen vergleichen
von Bright4.5 » 28.03.2019 08:56 • Verfasst in ABAP® für Anfänger
7
Antw.
4271
Views
2 interne Tabellen vergleichen
von Frank Schmitt » 24.06.2020 09:40 • Verfasst in ABAP® für Anfänger
2
Antw.
2135
Views
2 interne Tabellen vergleichen
von Klende » 21.11.2005 15:16 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Feldwerte vergleichen
vor 13 Stunden von a-dead-trousers 4 / 106
Mahnung erstellen
Gestern von Sebastian82 4 / 265

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

Feldwerte vergleichen
vor 13 Stunden von a-dead-trousers 4 / 106
Mahnung erstellen
Gestern von Sebastian82 4 / 265

Unbeantwortete Forenbeiträge

OPD Druck im SPOOL
vor 3 Tagen von Manfred K. 1 / 218
Export von Spools in XLSX
vor einer Woche von abapamateur 1 / 1255
Feldberechnung ME32K
vor einer Woche von ZF_SAPler 1 / 1807