einzelne Zeile aus Tabelle einer Struktur löschen

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

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

einzelne Zeile aus Tabelle einer Struktur löschen

Beitrag von uibig (ForumUser / 5 / 2 / 0 ) »
Hallo Zusammen,

ich habe jetzt eine Struktur "ls_invoice", die folgenden zwei Komponenten haben:

1. Header: ist eine Tabelle, die Kopf Info für eine Rechnung enthält, wie z.B. WE, RG, Belegnummer usw.
2. Items: ist eine Tabelle, die alle Positionen enthält. Wobei jede Zeile der Tabelle ist wiederrum eine Tabelle (enthält die konkrete Info für eine Position, z.B. Materialnummer, Preis usw.).

Ich muss jetzt prüfen, ob der Preis einer Position 0 ist. Wenn der Preis 0 ist, muss die Position ausgenommen werden. Wie kann ich dann einzelne Zeile aus der Items Tabelle löschen?

LOOP AT ls_invoice-items INTO ls_bil_items_price.

LOOP AT ls_bil_items_price-IT_PRICE INTO ls_IT_price.
l_Item_Price = ls_IT_price-NETWR.
if l_Item_Price = 0.
"Price is null
???
endif.

endloop.
endloop.

Es wäre toll, wenn jemand mir ein paar Tipps geben könnte. Vielen Dank im Voraus!

viele Grüße

Jun

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


Re: einzelne Zeile aus Tabelle einer Struktur löschen

Beitrag von wreichelt (Top Expert / 1031 / 29 / 188 ) »
Hallo,

LOOP AT ls_invoice-items INTO ls_bil_items_price.

LOOP AT ls_bil_items_price-IT_PRICE INTO ls_IT_price.
l_Item_Price = ls_IT_price-NETWR.
if l_Item_Price = 0.
"Price is null
delete ls_bol_items_price-it.
endif.

endloop.
endloop.


Gruß Wolfgang

Folgende Benutzer bedankten sich beim Autor wreichelt für den Beitrag:
uibig


Re: einzelne Zeile aus Tabelle einer Struktur löschen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hallo Jun,

mit jedem Schleifendurchlauf wird das Feld TABIX der SYST-Struktur automatisch mit der Zeile gefüllt, in der du dich gerade in der Tabelle befindest, daher TAB-IX = TABellen-IndeX.

Wenn du nun eine Zeile in der Tabelle findest, solltest du diese mit

Code: Alles auswählen.

DELETE TABLE ls_bil_items_price-IT_PRICE FROM ls_it_price INDEX sy-tabix
löschen können.

Wenn dir das ganze Tabelle in der Tabelle einer Struktur zu unübersichtlich wird, empfehle ich dir die Tabellen jeweils in eigene Feld-Symbole zu referenziere. Dadurch wirkt das ganze dann zumindest beim Lesen etwas übersichtlicher.

@Wolfgang
Ich glaube dein Befehl wird mittlerweile als obsolet betrachtet. Bin mir gerade nicht sicher, ob SAP da bei der Generierung nicht maulen würde, dass das im OO-Kontext nicht mehr erlaubt ist.

Folgende Benutzer bedankten sich beim Autor Thanatos82 für den Beitrag:
uibig

Gruß,
der Matze

Re: einzelne Zeile aus Tabelle einer Struktur löschen

Beitrag von uibig (ForumUser / 5 / 2 / 0 ) »
Ich habe mit DELETE...INDEX sy-tabix probiert. Es hat funktioniert. Vielen herzlichen Dank für die Hilfe von Wolfgang und Thanatos82.

Seite 1 von 1

Vergleichbare Themen

1
Antw.
612
Views
Zeile in Struktur löschen
von Geny » 27.01.2021 12:09 • Verfasst in ABAP® für Anfänger
2
Antw.
6032
Views
Append-Struktur in einer Tabelle löschen
von kbit100 » 06.03.2007 10:11 • Verfasst in Basis
4
Antw.
5061
Views
ALV Einzelne Zeile Editierbar
von SaskuAc » 27.09.2018 07:52 • Verfasst in ABAP® Core
15
Antw.
5947
Views
Einzelne Zeile auslesen
von Schäfer_anfänger » 17.01.2017 14:01 • Verfasst in ABAP® für Anfänger
3
Antw.
4636
Views
ALV-Grid: einzelne Zeile editieren
von OliTe » 19.07.2005 12:20 • Verfasst in ABAP® für Anfänger

Ü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.