Eingabewert in einer internen Tabelle?

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

Eingabewert in einer internen Tabelle?

Beitrag von zickzack0312 (ForumUser / 30 / 0 / 0 ) »
Hallo,

ich habe ein kleines Programm geschrieben:

Code: Alles auswählen.

parameters eingabe type string.
data: begin of it1 occurs 10,
      f1 type string,
      f2 type n,
      f3 type n,
      end of it1.

Und jetzt möchte ich überprüfen, ob das Feld 'f1' der internen Tablle 'it1' den eingegebenen Wert von 'eingabe'hat, kann jemand mir einen Tipp geben. Dank im voraus.

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


Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo zickzack0312,

wahrscheinlich wird der READ TABLE genau das liefern, was Du suchst. Die Hilfe dazu ist recht ausführlich.

PS:
das Coding hier hinzuschreiben, wäre zwar für Dich einfacher, aber es Dir wahrscheinlich mehr, zu wissen, was alles mit READ (TABLE) gemacht werden kann.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von zickzack0312 (ForumUser / 30 / 0 / 0 ) »
Hallo Ereglam,

ich habe nachgelesen und denke, dass ich die Anweisung

READ TABLE <itab>
INTO <wa> [COMPARING <f1> <f2>... |ALL FIELDS].

benutzen kann, aber danach muss der Inputwert wieder mit <wa> verglichen werden, oder? wie? Danke

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo zickzack0312,

schau Dir dazu mal den Zusatz WITH KEY an. Damit wirst Du direkt beim Lesen der Tabelle sagen können, welche Zeile Du haben möchtest.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von zickzack0312 (ForumUser / 30 / 0 / 0 ) »
Hallo Ereglam,

der Schlüssel in der Anweisung
READ TABLE <itab> WITH KEY <k1> = <f1>..<kn> = <fn>
muss nicht unbedingt ein wirklicher Schlüssel der Tabelle sein, oder? In meinem Beispiel kann ich dann so schreiben:

Code: Alles auswählen.

read table it1 with key f1 = eingabe.
if sy-subrc <> 0.  'der Eingabewert ist nicht in Itab
exit.
endif.
ist das richtig? danke sehr.

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo zickzack0312,

ja, das ist richtig. Mit KEY ist in diesem Zusammenhang nur ein Feld als Selektionsbezug an sich gemeint.

PS:
Du solltest Dir gleich angewöhnen, auf die Verwendung der impliziten Kopfzeile von Deiner Tabelle 'it1' zu verzichten und statt dessen explizit definierte Arbeitsbereiche verwenden:

Code: Alles auswählen.

TYPES: 
  BEGIN OF typ_it1, 
      f1 type string, 
      f2 type n, 
      f3 type n, 
  END OF typ_it1,
  typ_t_it1 TYPE TABLE OF typ_it1. "kann auch als Formalparameter in FORM benutzt werden

DATA: 
  it1    TYPE TABLE OF typ_it1,
*  it1    TYPE typt_it1,  "weitere Möglichkeit
  wa_it1 LIKE LINE OF it1.

read table it1 INTO wa_it1 with key f1 = eingabe. 
if sy-subrc <> 0.  'der Eingabewert ist nicht in Itab 
exit. 
endif.
Da implizite Kopfzeilen spätestens im OO-Umfeld in Methoden verboten sind, sparst Du Dir den Umstellungsaufwand.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von zickzack0312 (ForumUser / 30 / 0 / 0 ) »
vielen Dank für deine nette Hilfe :-)

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
dann wart' mal die Rechnung ab... :twisted:
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Seite 1 von 1

Vergleichbare Themen

6
Antw.
1592
Views
Eingabewert mit 0 expandieren?
von Gast » 19.02.2006 20:45 • Verfasst in ABAP® für Anfänger
2
Antw.
3764
Views
Daten aus internen Tabelle in Tabelle speichern
von Stahle71 » 03.06.2015 11:03 • Verfasst in ABAP® für Anfänger
3
Antw.
1359
Views
Tablecontrol: Eingabewert wird nicht übernommen
von khb » 10.02.2015 17:26 • Verfasst in ABAP® für Anfänger
4
Antw.
2575
Views
Probleme mit der internen Tabelle
von swonny » 09.01.2007 09:11 • 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

Regex in where
vor 16 Stunden von tar 8 / 364
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 284
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 527

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

Regex in where
vor 16 Stunden von tar 8 / 364
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 284
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 527

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 221
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3403
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9953