Select bei interner Tabelle

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

Select bei interner Tabelle

Beitrag von Buetzy (ForumUser / 35 / 0 / 0 ) »
Hallo,

folgendes Problem:
Ich habe Datensätze in einer internen Tabelle. Hier gibt es Feld_1 und Feld_2. Es kann sein das im Feld_1 eines Datensatzes die gleiche Nr. steht wie im Feld_2 eines anderen. Diese möchte ich haben. Also die Nr. aus Feld_2 nehmen und in der internen Tabelle in Feld_1 suchen.

LOOP AT it_intern into wa_intern.

Select Single From it_intern
where feld_2 EQ wa_intern_feld1.
ENDLOOP.
Hier kommt folgenden Fehlermeldung

Programm XXX
"it_intern" ist im ABAP-Dictionary nicht als Tabelle, Projektions- oder
Datenbank-View deklariert.

Wie gehts richtig, Danke
Stefan

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


Beitrag von khb (Specialist / 184 / 7 / 1 ) »
Hallo Buetzy,

select-statements funktionieren nicht bei internen Tabellen.

Hierzu nimmst Du read table .... with key ... und am besten mit binary search.

Die F1-Hilfe ist hier recht gut.

VLG khb

Es wird nur ein Datensatz gelesen

Beitrag von Buetzy (ForumUser / 35 / 0 / 0 ) »
Hallo,
erstmal Danke für die schnelle Antwort. Mit der Read Anweisung klappt es erstmal. Allerdings wird nur ein Datensatz gefunden, es müssten aber mehrere sein. Folgenden Code habe ich verwendet:

WHILE sy-subrc = 0.
READ TABLE it_intern
WITH KEY feld_1 = it_intern_1-Feld_2.
if sy-subrc = 0.
MOVE-CORRESPONDING: it_intern TO it_intern_3.
APPEND it_intern_3.
Else.
exit.
endif.
CLEAR: it_intern_1-Feld_2.
ENDWHILE.

Wo liegt mein Fehler, Danke
Stefan

Beitrag von khb (Specialist / 184 / 7 / 1 ) »
Stehen die gesuchten Datensätze hintereinander?

Dann: Sy-Tabix in Variable schreiben, variable um 1 erhöhen, intern_3 füllen und lesen mit read table ... index ... .

stehen sie nicht hintereinander, die interne Tabelle mit loop at ... where ... lesen.

Schau Dir mal die F!-Hilfe zum loop an.

GL khb

Beitrag von SkyHobbit (Specialist / 170 / 0 / 1 ) »
Hallo Buetzy,

in der Doku zu Read steht, dass nur ein Satz gelesen wird ... eigentlich sollten Schlüssel auch eindeutig sein.

Wenn Du mehrere Treffer erwartest, loope doch mit ' LOOP AT itab' über Deine Tabelle.

Gruß.
Ulf

Beitrag von Buetzy (ForumUser / 35 / 0 / 0 ) »
Vielen Dank für Eure Hinweise,

ich habe es jetzt folgendermassen gelöst:

LOOP AT it_intern.
MOVE-CORRESPONDING: it_inter TO it_intern2.
append it_intern2.
ENDLOOP.

Loop At it_intern.
if feld_S = '1'
Loop At it_intern2
where feld_1 EQ it_intern-feld_2.
if sy-subrc = 0.
MOVE-CORRESPONDING: it_intern2 TO it_intern3.
APPEND it_intern3..
endif.
ENDLOOP.
endif.
endloop.
Stefan

Beitrag von khb (Specialist / 184 / 7 / 1 ) »
Hallo Buetzy,

innerhalb des loop at ... where .. brauchst Du keine Abfrage auf SY-SUBRC = 0. Wenn es nicht geklappt hätte, wärts Du ja nicht im Loop, oder :wink: .

VLG khb

Seite 1 von 1

Vergleichbare Themen

10
Antw.
3381
Views
Select mit interner Tabelle
von Kenny » 13.11.2013 12:17 • Verfasst in ABAP® für Anfänger
7
Antw.
4326
Views
Concatenate in interner Tabelle
von wenigerABAP » 16.09.2016 12:47 • Verfasst in ABAP® für Anfänger
7
Antw.
1351
Views
.xls Datei aus interner Tabelle
von JanR » 05.10.2020 10:10 • Verfasst in ABAP® für Anfänger
2
Antw.
1697
Views
Problem mit interner Tabelle
von Troilus » 17.11.2007 23:09 • Verfasst in ABAP® Core
14
Antw.
9770
Views
Löschen aus interner Tabelle
von Beginner014 » 21.11.2014 09:26 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

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

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140