Tabelle in interne Tabelle kopieren

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

Tabelle in interne Tabelle kopieren

Beitrag von Kai999 (ForumUser / 39 / 3 / 0 ) »
Hallo,
ich bin ein Anfänger nud benötige eure Hilfe. Ich möchte aus einer Standard Tabelle, bestimmte Zeilen in eine interne Tabelle speichern, weil ich nicht alle Zeilen brauche. Einige Einträge in der internen Tabelle möchte ich sortieren und mit einem ‚1‘ kennzeichnen.

Gruß
K.K.
Zuletzt geändert von Kai999 am 01.06.2017 10:41, insgesamt 2-mal geändert.

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


Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Inwiefern möchtest du die Einträge mit '1' kennzeichnen?

Wofür ist der LOOP gedacht? Weißt du, dass man bei SELECT auch ... INTO TABLE verwenden kann, um eine interne Tabelle zu befüllen? Damit würdest du dir das ENDSELECT und wahrscheinlich auch die Schleife sparen.

Warum möchtest du nur "einige" Einträge sortieren? Nach welcher Regel soll das ablaufen?

Re: Tabelle in interne Tabelle kopieren

Beitrag von Kai999 (ForumUser / 39 / 3 / 0 ) »
Ich möchte von den kopierten Einträgen nur einige kennzeichnen. z.B. alle kennzeichen, die eine 5 enthalten. Beim Loop dachte ich an die Tabelle, um jede Zeile zu checken. Mit dem SELECT ... INTO TABLE habe ich angepasst.
Zuletzt geändert von Kai999 am 01.06.2017 10:42, insgesamt 3-mal geändert.

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Also wenn du mit "die eine 5 enthalten" die Telefonnummer meinst, kannst du deinen LOOP so durchlaufen:

Code: Alles auswählen.

LOOP AT lt_tel_no INTO ls_tel_no WHERE ls_tel_no-telnr_call CA '5'.
    " Hier werden nur Zeilen verwendet, deren Telefonnummer eine 5 enthalten
ENDLOOP.
Wenn du die Zeile direkt in der Tabelle bearbeiten möchtest, solltest du an der Stelle mal einen Blick auf Feldsymbole werfen.

Zu deiner letzten Frage: Das liegt daran, dass gt_tel, die Tabelle die du ausgeben möchtest, niemals mit Daten befüllt wird, da die APPEND-Struktur gs_tel nicht gefüllt wird (sondern gs_number).

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von Kai999 (ForumUser / 39 / 3 / 0 ) »
Ok, danke.
Jetzt habe ich alle Einträge. Nun möchte ich in meiner Tabelle noch eine Spalte hinzufügen, indem ich alle Einträge, die eine '5' enthalten, mit einem 'A' kennzeichne.

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Kannst du dieses "Einträge, die eine '5' enthalten" bitte genauer definieren? Die Zeile einer Tabelle enthält mehrere Komponenten - oder Zellen. Welche dieser Komponenten meinst du?

Wenn du eine Spalte hinzufügen möchtest, solltest du das am besten gleich bei der Typdefinition deiner internen Tabelle machen. Dynamisch wird das Ganze - gerade als Anfänger - etwas zu komplex.

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von Kai999 (ForumUser / 39 / 3 / 0 ) »
Wie genau mache ich das mit der Typdefinition?

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Typen definierst du mit Hilfe des Schlüsselworts TYPES.

Code: Alles auswählen.

TYPES:
    BEGIN OF t_adr2_s.
        INCLUDE TYPE adr2. " ADR2 als 'Vorlage' verwenden
TYPES:
        neu TYPE c, " Hier ist dein neues Feld
    END OF t_adr2_s,
    t_adr2_tt TYPE STANDARD TABLE OF t_adr2_s.

" Jetzt noch den Typ von it_number auf das ändern:
DATA it_number TYPE t_ard2_tt.

LOOP ...
" und zeile-neu mit 'A' belegen, wenn gewünscht
ENDLOOP.

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von gtoXX (Specialist / 213 / 44 / 36 ) »
Kai999 hat geschrieben:Ok, danke.
Jetzt habe ich alle Einträge. Nun möchte ich in meiner Tabelle noch eine Spalte hinzufügen, indem ich alle Einträge, die eine '5' enthalten, mit einem 'A' kennzeichne.

Grundsätzlich : An Perfomance denken. Ein einmaliger Select into Table ist für die Datenbank einfacher und die Bearbeitung der Tabelle im Speicher natürlich xmal schneller.

Wozu willst Du aber die Tabelle kennzeichen ? Du kannst diese Abfrage genauso mit LOOP AT... WHERE gestalten, als einschränkende Bedindung bei der Bearbeitung.
"Code lügt nicht ^^"

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von Kai999 (ForumUser / 39 / 3 / 0 ) »
Na klar, mit der Loop Anweisung :D . Sieht der Code dafür so aus:

Code: Alles auswählen.

CREATE DATA var TYPE p DECIMCALS 1.
ASSIGN var TO <fs>
<fs> = itab-<Spalte B>.

Re: Tabelle in interne Tabelle kopieren

Beitrag von sapyard (ForumUser / 31 / 5 / 2 ) »
Define another internal table of the same type.

* Assign to another table
it_tab2[] = it_tab1[].

* Now keep only those entries which you want in it_tab2.
DELETE it_tab2 where field1 NE 1.
Thanking you.

With Regards,
Raju.
----------------------
Raju Shrestha
www.sapyard.com
----------------------

Re: Tabelle in interne Tabelle kopieren und Felder kennzeich

Beitrag von ralf.wenzel (Top Expert / 3924 / 200 / 280 ) »
lausek hat geschrieben:
24.05.2017 13:43
Also wenn du mit "die eine 5 enthalten" die Telefonnummer meinst, kannst du deinen LOOP so durchlaufen:

Code: Alles auswählen.

LOOP AT lt_tel_no INTO ls_tel_no WHERE ls_tel_no-telnr_call CA '5'.
    " Hier werden nur Zeilen verwendet, deren Telefonnummer eine 5 enthalten
ENDLOOP.
Und jetzt das Ganze in modern - mit FOR?


Ralf *steht mit FOR noch immer auf Kriegsfüßen...
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Seite 1 von 1

Vergleichbare Themen

1
Antw.
3127
Views
Daten aus DB-Tabelle in interne Tabelle kopieren
von b0rsti » 07.02.2008 10:52 • Verfasst in ABAP® für Anfänger
1
Antw.
7761
Views
interne Tabelle in Datenbanktabelle kopieren
von muffel » 20.08.2010 15:55 • Verfasst in ABAP® für Anfänger
4
Antw.
6510
Views
Wie Zeile aus IT in andere interne Tabelle kopieren
von halo5 » 03.09.2009 08:22 • Verfasst in ABAP® für Anfänger
3
Antw.
1403
Views
interne Tabelle in Field-Symbol mit weniger spalten kopieren
von JanR » 02.10.2020 12:07 • Verfasst in ABAP® für Anfänger

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
Gestern von Bright4.5 1 / 511
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2146
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8742