Kopie eine dyn. Tabelle

für eilige Fragen
2 Beiträge • Seite 1 von 1
2 Beiträge Seite 1 von 1

Kopie eine dyn. Tabelle

Beitrag von m.schwertle (ForumUser / 94 / 0 / 0 ) »
Ich möchte bei einer dynamisch erzeugten Tabelle (Struktur bzw. Felder erst zur Laufzeit bekannt) die ersten (z.B.) 200 Zeilen in eine Kopie der Tabelle verschieben.

Ich krieg gleich noch die Krise...

Code: Alles auswählen.

* <gt_data> ist Referenz zu der dynamischen Tabelle

* Kopie der Tabelle
    CREATE DATA dref LIKE TABLE OF <gt_data>.
    ASSIGN dref->* TO <table>.

* Arbeitsbereich kopierte Tabelle
    CREATE DATA dref_wa LIKE LINE OF <table>.
    ASSIGN dref_wa->* TO <wa>.

* Arbeitsbereich originale Tabelle
    CREATE DATA dref_comp LIKE LINE OF <gt_data>.
    ASSIGN dref_comp->* TO <comp>.

    LOOP AT <gt_data> INTO <comp>.
      IF sy-index GE 200.
        EXIT.
      ENDIF.
      <wa> = <comp>.
      APPEND <wa> TO <table>.
      DELETE <gt_data>.
    ENDLOOP.
Laufzeitfehler:

Code: Alles auswählen.

Es wurde versucht, zwei Datenobjekte aufeinander zu kopieren.
Dies ist im vorliegenden Fall nicht möglich, da dabei ein Datenobjekt
vom Typ "u" in den Typ "h" konvertiert werden soll; dies wird nicht
unterstützt.

Liste der internen ABAP-Typen:

  C    Text (Character)
  N    numerischer Text
  D    Datum (YYYYMMDD)
  T    Zeitpunkt (HHMMSS)
  X    Hexadezimal
  I    ganze Zahl (Integer)
  P    gepackte Zahl
  F    Gleitpunktzahl

  h    Interne Tabelle
  r    Objektreferenz
  l    Datenreferenz
  g    String vom Typ C
  y    String vom Typ X
  s    2-Byte-Integer mit Vorzeichen
  b    1-Byte-Integer ohne Vorzeichen
  u    Struktur (flache Struktur)
  v    Struktur (tiefe Struktur)
HILFEEEEEE! :roll:

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


Beitrag von m.schwertle (ForumUser / 94 / 0 / 0 ) »
Das Problem ist behoben.

Code: Alles auswählen.

* Feldleiste für Originaltabelle
  CREATE DATA dref_comp LIKE LINE OF <gt_data>.
  ASSIGN dref_comp->* TO <comp>.

* Kopie der Feldleiste
  CREATE DATA dref_wa LIKE <comp>.
  ASSIGN dref_wa->* TO <wa>.

* Table von Feldleistenkopie
  CREATE DATA dref LIKE TABLE OF <wa>.
  ASSIGN dref->* TO <table>.

  LOOP AT <gt_data> INTO <comp>.
    ...
    ASSIGN <comp> TO <wa>.
    APPEND <wa> TO <table>.
    DELETE <gt_data>.
  ENDLOOP.
Danke an alle, die zumindest mal drüber nachgedacht haben ;-)

Seite 1 von 1

Über diesen Beitrag

m.schwertle
Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

FOR mit CORRESPONDING
vor 8 Stunden von black_adept 5 / 394
Web Feature Services (WFS) im SAP
vor 2 Tagen von msfox 1 / 172

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

FOR mit CORRESPONDING
vor 8 Stunden von black_adept 5 / 394
Web Feature Services (WFS) im SAP
vor 2 Tagen von msfox 1 / 172

Unbeantwortete Forenbeiträge

Web Feature Services (WFS) im SAP
vor 2 Tagen von msfox 1 / 172
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 2408
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 2262