HASHED TABLE-Befüllung

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

HASHED TABLE-Befüllung

Beitrag von cyb1982 (ForumUser / 18 / 3 / 0 ) »
Hallo zusammen,

ich versuche mich momentan mal wieder an den verschiedenen internen Tabellentypen. Jetzt bin ich bei der Hashed Table auf ein Problem gestoßen, was ich bis jetzt noch nicht geschafft habe zu lösen.

REPORT Z00_HASHED_TABLE.

DATA:
BEGIN OF line,
name(10) TYPE c,
vorname(10) TYPE c,
alter TYPE i,
END OF line.

DATA
tabelle TYPE HASHED TABLE OF line
WITH UNIQUE KEY name.



line-name = 'Mork'.
line-vorname = 'Monk'.
line-alter = 15.

INSERT line INTO TABLE tabelle.

Zunächst irritiert mich das bei Der Hashed Table genau so wie bei der Sorted Table sehr, dass ich die Struktur hier nicht in "TYPES:" eintrage sondern im DATA-Bereich. Bei dem Code hier habe ich jetzt das Problem, dass es für eine Sorted Table so gehen würde. Bei der Wahl der Hashed Table Variante bekomme ich hier nun allerdings folgende Fehlermeldung:
Es existiert keine Komponente mit dem Namen "NAME".
Wie muss ich den Code abändern, damit ich hier keine derartige Fehlermeldung mehr erhalte? Liege ich mit der Annahme falsch, dass die Hashed Table genau so wie die Sorted Table keine Workarea hat? Warum funktioniert bei der Variante der Sorted Table hier an dieser Stelle bei gleichem Codeaufbau das Einfügen von Daten problemlos?

Ich hoffe mich kann hier an dieser Stelle jemand erleuchten.

Mit freundlichem Gruß,

cyb1982

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


Re: HASHED TABLE-Befüllung

Beitrag von black_adept (Top Expert / 4089 / 127 / 940 ) »
Hallo cyb1982,

1.) Die Struktur kannst du sehr wohl über "TYPES" definieren - warum das nicht gehen sollte entschließt sich mir.
2.) Auch für eine "sorted table" würdest du entgegen deiner Behauptung den selben Syntaxfehler bekommen.

3.) Grund für den Syntaxfehler:
Das ist tatsächlich etwas tricky. du definierst dir die Zeilenstruktur deiner Tabelle mittels "DATA.....".
Wenn du jetzt auf diese Zeilenstruktur in deinem Programm referenzieren willst musst du dies via " ....LIKE ...." machen, da du mit DATA... eine Variable defniert hast.
Du hingegen verwendest im Coding die Version ".... TYPE ...". Somit versucht der Compiler eine gültige Typbeschreibung zu finden. Da du aber im Programm nichts selber definiert hast schaut der Compiler ins DDIC und findet dort die Struktur "LINE". Und diese hat nur ein einziges Feld welches auch LINE heißt.
Würdest du deine Hash-Tabelle statt "TYPE" mit "LIKE" definieren

Code: Alles auswählen.

DATA
tabelle LIKE HASHED TABLE OF line
WITH UNIQUE KEY name.
hättest du das Problem nicht mehr, weil der Compiler nun die im Coding definierte Variable "LINE" dem im DDIC definierten Typ "LINE", der leider auch via "LIKE" referenziert werden kann, vorzieht ( Programm überschattet DDIC ).

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
cyb1982

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: HASHED TABLE-Befüllung

Beitrag von cyb1982 (ForumUser / 18 / 3 / 0 ) »
Ah danke :)

Das habe ich noch nicht gewusst. :)

Mit freundlichem Gruß,

die etwas mehr erleuchtete cyb1982

Seite 1 von 1

Vergleichbare Themen

1
Antw.
5124
Views
sorted table, hashed table: Übergabe Workarea -> Performa
von Jürgen Fischer » 30.01.2006 08:09 • Verfasst in ABAP® Core
1
Antw.
1897
Views
Hashed Table und Objekte
von reichi » 10.12.2012 10:27 • Verfasst in ABAP Objects®
1
Antw.
1151
Views
Hashed Table als Dict-TYP
von RIG » 24.03.2017 10:19 • Verfasst in ABAP® für Anfänger
5
Antw.
9841
Views
standard table vs. sorted table
von ralf.wenzel » 31.07.2014 12:49 • Verfasst in ABAP® Core
44
Antw.
11252
Views
INTO CORRESPONDING FIELDS OF TABLE VS. INtO TABLE
von Bright4.5 » 07.12.2018 13:22 • Verfasst in ABAP® für Anfänger

Ü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 2 Tagen von Bright4.5 1 / 717
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2343
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8926