Prüfung vorhandener Einträge in Tabelle

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

Prüfung vorhandener Einträge in Tabelle

Beitrag von Stahle71 (ForumUser / 24 / 3 / 0 ) »
Hallo,
habe folgendes Problem:

Ich muss prüfen, ob eingegebene Werte schon vorhanden sind in einer Tabelle und wenn vorhanden soll er die ID ausgeben.

Tabelle: zusammengesetzter Schlüssel: ID, Name, Wert
Beispieldaten: folgende mit den gleichen IDs gehören zusammen sind aber jeweils 1 Eintrag in der Tabelle
ID = 1 name = platz wert = k
ID = 1 name = regal wert = f
ID = 2 name = platz wert = k
ID = 2 name = regal wert = f
ID = 2 name = platz2 wert = g

Meine Prüfung geht jetzt so vor: ich habe alle Regale in einer itab -> darüber wird eine loop gemacht um die ID zu bekommen. Danach mache ich eine Prüfung über die Plätze mit der ID vom Regal, ob dieser Platz vorhanden ist.
Problem ist, er findet den Eintrag mit "name = platz & wert = k" sowohl in der ID 1 und 2. Somit gibt er mir immer 2 zum Schluss aus.
Kann man das überprüfen, wenn die Eingabe lautet "name = regal und wert = f und name = regal und wert = k" , dass dann nur dieser Eintrag verwendet wird, denn in ID 2 sind diese auch vorhanden aber es existiert noch ein weiterer platz?

Danke und Grüße
Stahle

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


Re: Prüfung vorhandener Einträge in Tabelle

Beitrag von wreichelt (Top Expert / 1046 / 30 / 192 ) »
Hallo,

sicher kannst du das prüfen.
Im LOOP kannst du ja mittels IF .... alles prüfen und nur ausgeben wenn deine Abfrage zutrifft.

Gruß
Wolfgang

Re: Prüfung vorhandener Einträge in Tabelle

Beitrag von Stahle71 (ForumUser / 24 / 3 / 0 ) »
Hallo,
also irgendwie macht er mit diesen Code immer die falsche ID, könntest du mir kurz sagen wo mein Denkfehler liegt?

LOOP AT it_zak INTO wa_zak. ** hier sind die regale ( damit ich eine ID zum abfragen der plätze bekomme)
LOOP AT idat2 INTO wa_idat2 WHERE chbox = 'X'. ** in der idat2 sind die plätze welche eingeben wurden (Es könne einer oder mehrere vorhanden sein)

SELECT SINGLE * FROM zregal_platz WHERE
id = wa_zak-id AND
name = wa_idat2-name AND
wert = wa_idat2-.

IF sy-subrc = 4.
EXIT.
ELSE.
w_input2 = wa_zak-id.
ENDIF.
ENDLOOP.
ENDLOOP.

Er findet in ID 1 und in ID den Eintrag: name = platz & wert = k und schreib mir nach letzten durchlauf die ID 2 hin?

Grüße Stahle

Re: Prüfung vorhandener Einträge in Tabelle

Beitrag von Stahle71 (ForumUser / 24 / 3 / 0 ) »
Hallo,
also irgendwie macht er mit diesen Code immer die falsche ID, könntest du mir kurz sagen wo mein Denkfehler liegt?

LOOP AT it_zak INTO wa_zak. ** hier sind die regale ( damit ich eine ID zum abfragen der plätze bekomme)
LOOP AT idat2 INTO wa_idat2 WHERE chbox = 'X'. ** in der idat2 sind die plätze welche eingeben wurden (Es könne einer oder mehrere vorhanden sein)

SELECT SINGLE * FROM zregal_platz WHERE
id = wa_zak-id AND
name = wa_idat2-name AND
wert = wa_idat2-.

IF sy-subrc = 4.
EXIT.
ELSE.
w_input2 = wa_zak-id.
ENDIF.
ENDLOOP.
ENDLOOP.

Er findet in ID 1 und in ID den Eintrag: name = platz & wert = k und schreib mir nach letzten durchlauf die ID 2 hin?

Grüße Stahle

Re: Prüfung vorhandener Einträge in Tabelle

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
Stahle71 hat geschrieben: wo mein Denkfehler liegt?

Code: Alles auswählen.

LOOP AT it_zak INTO wa_zak.  ** hier sind die regale ( damit ich eine ID zum abfragen der plätze bekomme)
    LOOP AT idat2 INTO wa_idat2 WHERE chbox = 'X'. ** in der idat2 sind die plätze welche eingeben wurden (Es könne einer oder mehrere vorhanden sein)
[code]            

Du musst die beiden Loops doch irgendwie verbinden. So wird je Eintrag in it_zak einmal die gesamte idat2 verarbeitet. 
Gibt es eine Verbindung zwischen it_zak und idat2?
Gruß Hendrik

Seite 1 von 1

Vergleichbare Themen

5
Antw.
2933
Views
Prüfung interner Tabelle
von knut » 27.06.2005 14:44 • Verfasst in ABAP® Core
2
Antw.
2292
Views
Prüfung ob tabelle existiert
von bliP! » 07.02.2006 15:06 • Verfasst in ABAP® für Anfänger
13
Antw.
6143
Views
Einträge zählen interne Tabelle
von L0w-RiDer » 08.11.2018 18:58 • Verfasst in ABAP® für Anfänger
6
Antw.
10566
Views
Einträge einer Tabelle zählen ...
von anonymizer2002 » 14.09.2007 14:31 • Verfasst in ABAP® für Anfänger
2
Antw.
2476
Views
Einträge aus DB-Tabelle paketweise selektieren
von euro2008 » 28.08.2008 17:00 • 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

Dialog-Container mit Toolbar/Status
vor 10 Stunden von DeathAndPain gelöst 22 / 3020
Daten an Tabelle binden
vor 15 Stunden von Lukas Sanders 2 / 989
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 555

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

Dialog-Container mit Toolbar/Status
vor 10 Stunden von DeathAndPain gelöst 22 / 3020
Daten an Tabelle binden
vor 15 Stunden von Lukas Sanders 2 / 989
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 555

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2570
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9149