Löschen von fast indentischen Einträgen in einer internen Tabelle

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

Löschen von fast indentischen Einträgen in einer internen Tabelle

Beitrag von kaim77 (Specialist / 200 / 0 / 0 ) »
Guten Tag,

man hat ja mit
DELETE ADJACENT DUPLICATES FROM lt_obj COMPARING objid.

die Möglichkeit Duplikate zu löschen, wenn die Spalte objid folgende Einträge hat:

7867524
7867524

Wie ist es, wenn man folgenden Eintrag in einer Spalte hat. Also nur die Mitte identisch ist:
0A W 47112345 11
0A W 47112345 22

hier sollte dann eine Zeile gelöscht werden.

Viele Grüße
Kaim

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


Re: Löschen von fast indentischen Einträgen in einer internen Tabelle

Beitrag von qyurryus (Specialist / 112 / 85 / 45 ) »
Man könnte beim "COMPARING"-Zusatz das Feld mit einem Offset + Länge einschränken (Voraussetzung natürlich eine sortierte Tabelle), Beispiel:

Code: Alles auswählen.

TYPES ty_objid_t TYPE STANDARD TABLE OF name1 WITH DEFAULT KEY.
DATA(test) = VALUE ty_objid_t(
  ( |0A W 47112345 11| )
  ( |0A W 47112345 11| )
  ( |1A W 47112345 22| )
  ( |1A W 471| ) ).
  
  " vergleicht stelle 1-13, also z.B. den Teil 0A W 47112345
  DELETE ADJACENT DUPLICATES FROM test COMPARING table_line(13).
  " Ergebnis:
  " ( |0A W 47112345 11| )
  " ( |1A W 47112345 22| )
  " ( |1A W 471| ) ).

  " vergleicht "Mittelteil" 47112345
  DELETE ADJACENT DUPLICATES FROM test COMPARING table_line+5(8). 
  " Ergebnis:
  " ( |0A W 47112345 11| )
  " ( |1A W 471| ) ).

Re: Löschen von fast indentischen Einträgen in einer internen Tabelle

Beitrag von DeathAndPain (Top Expert / 1952 / 259 / 413 ) »
Funktionieren Offsetangaben denn beim COMPARING-Zusatz? Ich habe es nie versucht, aber es würde mich überraschen.

Ansonsten kann man auch auf den DELETE ADJACENT DUPLICATES verzichten und es "zu Fuß" machen.

Code: Alles auswählen.

LOOP AT tabelle ASSIGNING FIELD-SYMBOL(<tabelle>) FROM 2.
  ASSIGN tabelle[ sy-tabix - 1 ] TO FIELD-SYMBOL(<vorige_zeile>).
  CHECK <tabelle>-spalte+5(10) = <vorige_zeile>-spalte+5(10).
  DELETE tabelle.
ENDLOOP.

Re: Löschen von fast indentischen Einträgen in einer internen Tabelle

Beitrag von qyurryus (Specialist / 112 / 85 / 45 ) »
DeathAndPain hat geschrieben:
30.06.2020 16:00
Funktionieren Offsetangaben denn beim COMPARING-Zusatz? Ich habe es nie versucht, aber es würde mich überraschen.
Ich war mir auch nicht sicher - habe mir deshalb den Beispielfall gebaut in dem es tatsächlich funktioniert.

Folgende Benutzer bedankten sich beim Autor qyurryus für den Beitrag:
DeathAndPain


Re: Löschen von fast indentischen Einträgen in einer internen Tabelle

Beitrag von DeathAndPain (Top Expert / 1952 / 259 / 413 ) »
Nun ja, dann hat er jetzt zwei funktionierende Alternativen. 😊

Seite 1 von 1

Vergleichbare Themen

6
Antw.
2523
Views
Suche nach gleichartigen Einträgen in einer internen Tabelle
von balkusan » 19.01.2017 16:45 • Verfasst in ABAP® Core
10
Antw.
11117
Views
Spalten einer internen Tabelle löschen
von dEr_BuMaN » 27.06.2007 21:33 • Verfasst in ABAP® für Anfänger
8
Antw.
5144
Views
Feld einer internen Tabelle dynamisch löschen
von Hagbard » 16.08.2005 15:28 • Verfasst in ABAP® für Anfänger
1
Antw.
386
Views
SELECT-FROM-Befehl und Löschen von Einträgen
von lr_1504 » 10.01.2020 16:53 • Verfasst in ABAP® für Anfänger
8
Antw.
4488
Views
Löschen von Einträgen in einer Customizingtabelle
von LyNx » 10.06.2008 11:25 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Regex in where
vor 8 Stunden von edwin 7 / 166
Daten an Tabelle binden
vor 22 Stunden von Bright4.5 3 / 1487

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

Regex in where
vor 8 Stunden von edwin 7 / 166
Daten an Tabelle binden
vor 22 Stunden von Bright4.5 3 / 1487

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9822