Texttabellen lesen dynamisch

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Texttabellen lesen dynamisch

Beitrag von PeterPaletti (Specialist / 336 / 29 / 96 ) »
Ich habe in einer Ausgabestruktur Schlüsselfelder und lese aus Texttabellen die Texte hinzu.

Code: Alles auswählen.

DATA: ls_output       TYPE meine_ausgabe_struktur,
      ls_texttabelle  TYPE texttabelle,
      lt_texttabelle  TYPE STANDARD TABLE OF texttabelle,
      ls_texttabelle2 TYPE texttabelle2,
      lt_texttabelle2 TYPE STANDARD TABLE OF texttabelle2.


IF NOT ls_output-feld IS INITIAL.
  CLEAR ls_testtabelle.
  READ TABLE lt_texttabelle INTO ls_texttabelle
  WITH KEY feld = ls_output-feld.
  IF sy-subrc NE 0.
    SELECT SINGLE * FROM texttabelle INTO ls_texttabelle
      WHERE feld = ls_output-feld
      AND   langu = sy-langu.
    IF sy-subrc EQ 0.
      APPEND ls_texttabelle  TO lt_texttabelle.
    ENDIF.
  ENDIF.
  ls_output-feld_bezeichnung = ls_texttabelle-bezeichnung.
ENDIF.

IF NOT ls_output-feld2 IS INITIAL.
  CLEAR ls_testtabelle2.
  READ TABLE lt_texttabelle2 INTO ls_texttabelle2
  WITH KEY feld2 = ls_output-feld2.
  IF sy-subrc NE 0.
    SELECT SINGLE * FROM texttabelle2 INTO ls_texttabelle2
      WHERE feld2 = ls_output-feld2
      AND   langu = sy-langu.
    IF sy-subrc EQ 0.
      APPEND ls_texttabelle2  TO lt_texttabelle2.
    ENDIF.
  ENDIF.
  ls_output-feld2_bezeichnung = ls_texttabelle2-bezeichnung.
ENDIF.


Nun ist es so, dass es 10 von diesen Schlüsselfeldern gibt, zu denen Texte hinzugelesen werden müssen. Gut nun könnte man die Programmstruktur, 10 mal kopieren und entsprechend anpassen. Gibt es eine Möglichkeit, das Ganze dynamisch zu machen?

Die Texttabellen haben immer die gleiche Struktur.
SCHLÜSSELFELD (im Coding FELD bzw. FELD2)
SPRACHENSCHLÜSSEL
BEZEICHNUNG
Das SCHLÜSSELFELD ist immer vom gleichen Typ NUMC 3.
Zum SCHLÜSSELFELD gibt es eine Prüftabelle. Die Namen der Prüftabellen lassen sich nicht über Namenskonventionen ableiten, aber die Texttabellen heißen wie die Prüftabellen mit angehängten T
In der Ausgabestruktur heißt das Feld, das die Bezeichnung auffängt SCHLÜSSELFELD_BEZEICHNUNG.

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


Re: Texttabellen lesen dynamisch

Beitrag von black_adept (Top Expert / 3944 / 105 / 886 ) »
Wenn es unbedingt dynamsich sein soll:
Mit ASSIGN COMPONENT die Felder durchgehen.
Der SELECT erlaubt sowohl für die Tabelle als auch für die WHERE-Bedingung dynamische Versionen.
Der READ TABLE geht nicht dynamisch, aber du kannst das durch ein LOOP AT... WHERE ersetzen, wobei du die WHERE-Bedingung dynamisch machst und dann im LOOP direkt auf EXIT gehst.

Anderereseits ist doch mal eine der Situationen, wo man über einen gut platzierten Macro nachdenken könnte, der das Quelltextlesen nachher deutlich einfacher macht.

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

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1337
Views
Dynamisch Tabelleneinträge lesen
von Kenny » 02.05.2013 08:51 • Verfasst in ABAP® für Anfänger
0
Antw.
1033
Views
RTTI Dynamisch die Interne Tabellenstruktur lesen und Dowl.
von Kleenmex » 07.02.2008 15:25 • Verfasst in ABAP® Core
3
Antw.
11214
Views
dynamisch per Feldsymbol Tabelle lesen und in andere schreib
von TomBar » 02.02.2009 14:16 • Verfasst in ABAP® für Anfänger
1
Antw.
431
Views
Anzahl von Datensätzen aus einer Datenbanktabelle dynamisch lesen
von tekko » 31.03.2022 16:26 • Verfasst in ABAP Objects®
4
Antw.
3637
Views
Lesen in einer dynamisch generierten internen Tabelle
von Svenson » 05.10.2005 17:07 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Zwischensumme Adobe Forms
vor 4 Wochen von Lucyalison 1 / 134
Group Items auf einer Filterbar
vor 5 Wochen von Bright4.5 1 / 168