Type-Definition zur Laufzeit bestimmen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

Type-Definition zur Laufzeit bestimmen

Beitrag von airwaver (Specialist / 134 / 0 / 1 ) »
Hallo Leute,

ich möchte ein Programm schreiben, das einen Tabellennamen als Eingabe bekommt und mir diese ausgibt. Der eigentliche Sinn des Progs ist bißchen komplizierter. Naja, jedenfalls soll erst nachdem ich die Eingabe habe eine Workarea mit dem eingegebenen Tabellentyp erstellt werden.
Dieses Programm soll also für beliebige Tabellen sein, somit kann ich auch nicht im Programm 1000 Workareas machen.

Der ASSIGN funktioniert dan leider nicht und somit ist <wa> nicht zugewiessen und so kann auch nicht in <wa> geschrieben werden. :(

Hier mein Code:

Code: Alles auswählen.

PARAMETERS: p_table TYPE tabname.
FIELD-SYMBOLS: <wa>.
DATA: rc TYPE sysubrc.

* Check auf Tabellen-Existenz
CALL FUNCTION 'DD_EXIST_TABLE'
     EXPORTING
          tabname = p_table
          status  = 'M'
     IMPORTING
          subrc   = rc.
if rc <> 0.
  exit.
endif.

ASSIGN (p_table) TO <wa>.
IF sy-subrc <> 0.
  EXIT.
ENDIF.

SELECT * FROM (p_table) into <wa>.
  WRITE:/ <wa>.
ENDSELECT.

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


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

schau Dir mal den Themenblock CREATE DATA in der Hilfe an.
Gruß
Ereglam


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

Beitrag von zzcpak (Expert / 673 / 5 / 68 ) »
wieder was gelernt. So gehts:

Code: Alles auswählen.

PARAMETERS: p_table TYPE tabname.
FIELD-SYMBOLS: <wa> TYPE ANY.
DATA: rc TYPE sysubrc,
      dref TYPE REF TO data.

* Check auf Tabellen-Existenz
CALL FUNCTION 'DD_EXIST_TABLE'
     EXPORTING
          tabname = p_table
          status  = 'M'
     IMPORTING
          subrc   = rc.
IF rc <> 0.
  EXIT.
ENDIF.

CREATE DATA dref TYPE (p_table).
ASSIGN dref->* TO <wa>.
IF sy-subrc <> 0.
  EXIT.
ENDIF.

SELECT * FROM (p_table) INTO <wa>.
  WRITE:/ <wa>.
ENDSELECT.

Beitrag von airwaver (Specialist / 134 / 0 / 1 ) »
Jetzt wollte ich grad loswerden, dass ich es geschafft habe mit dem Tipp. DANKE! Und hier ist mein Code:

Code: Alles auswählen.

* Variablen
PARAMETERS: p_table TYPE tabname.
FIELD-SYMBOLS: <wa>.
DATA: rc TYPE sysubrc,
      dref TYPE REF TO data.

* Check auf Tabellen-Existenz
CALL FUNCTION 'DD_EXIST_TABLE'
     EXPORTING
          tabname = p_table
          status  = 'M'
     IMPORTING
          subrc   = rc.
IF rc <> 0.
  EXIT.
ENDIF.

* Work-Area wird definiert
CREATE DATA dref TYPE (p_table).
ASSIGN dref->* TO <wa>.
IF sy-subrc <> 0.
  EXIT.
ENDIF.

* Select/Update der Tabelle mit Hilfe der TWX2
SELECT * FROM (p_table) INTO CORRESPONDING FIELDS OF <wa>.
  WRITE:/ <wa>.
ENDSELECT.

Seite 1 von 1

Vergleichbare Themen

1
Antw.
2167
Views
Zugriff auf Type-definition aus PUBLIC Sector einer programm
von Thomas R. » 13.06.2006 16:03 • Verfasst in ABAP Objects®
4
Antw.
622
Views
Type aus Type ermitteln
von akosch » 13.02.2023 14:03 • Verfasst in ABAP® für Anfänger
6
Antw.
2831
Views
class definition.
von LittleT » 11.09.2006 08:48 • Verfasst in ABAP Objects®
2
Antw.
3698
Views
Definition der Usertypen (A und B)
von PatSten » 26.04.2018 09:04 • Verfasst in Basis
1
Antw.
2081
Views
Definition FNC1
von vwaadenm » 19.02.2007 12:15 • Verfasst in Material Management & Produktionsplanung

Ü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 / 738
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2364
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8948