Doppelte Einträge bei LOOP überspringen


Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV

Moderatoren: Jan, Steff

Doppelte Einträge bei LOOP überspringen

Beitragvon Dyrdek » 08.12.2016, 15:12

Hallo,

Ich habe einen Loop der über eine Tabelle mit Fehlermeldungen (z.B. 0001, etc.) loopt.
Um den Loop nicht zu lang zu machen habe ich eine SELECT-OPTION als WHERE-Abfrage eingebaut:
Code: Alles auswählen
LOOP AT p2001 INTO ls_p2001 WHERE awart IN so_awunb.

Nun brauch ich aber auch den Inhalt mehrere SELECT-OPTIONS.
Kann ich diese irgendwie mit einer OR-Anweisung anhängen? Oder wie kann ich die doppelten Einträge überspringen, damit nicht 100x die Fehlermeldung 0001 geprüft wird.

Danke für eure Tipps!

Gruß

Dominic
Dyrdek
Specialist
 
Beiträge: 287
Registriert: 06.02.2014, 11:06
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: Doppelte Einträge bei LOOP überspringen

Beitragvon ewx » 08.12.2016, 15:21

Das wirst du vorher prüfen müssen, z.B. mit SORT und DELETE ADJACENT DUPLICATES.
Oder du erstellst eine zusätzliche Tabelle, in der du die bereits ausgegebenen Meldungen sammelst und jeweils prüfst, ob du diese bereits ausgegeben hast oder nicht.

Es liegt aber nicht nur an der Meldungsnummer, ob eine Meldung "doppelt" ist!
Der Meldungstyp kann unterschiedlich sein, die Meldungsklasse natürlich aber auch die Parameter!
ewx
Top Expert
 
Beiträge: 3338
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 194 mal

Re: Doppelte Einträge bei LOOP überspringen

Beitragvon Foerstar » 08.12.2016, 15:22

Hallo,

Wenn ich dich richtig verstanden habe, möchtest du mehrere Select-Options in die Loop-Bedingung schreiben.

Dies geht. Einfach, wie in einem Select-Statement mit AND oder OR arbeiten.

Code: Alles auswählen
LOOP AT p2001 INTO ls_p2001 WHERE ( awart IN so_awunb OR awart IN so_awunb2 ) AND bwart IN so_bwart.


Wie du sehen kannst, funktioniert selbst Kammersetzung.

Bei Überspringen von Doppelten Einträgen wirst du erst mit SORT sortieren und dann DELETE ADJACENT DUPLICATES durchführen müssen.

Ich hoffe ich konnte dir weiterhelfen.

Mit freundlichen Grüßen,
Foerstar
Foerstar
ForumUser
 
Beiträge: 7
Registriert: 08.12.2016, 14:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in


Zurück zu ABAP® Core

  Aktuelle Beiträge   
CL_ABAP_CLASSDESCR und Syntaxfehler
vor 4 Stunden von black_adept 1 Antw.
Parameter-ID für Z-Programme einrichten
vor 9 Stunden von wreichelt 1 Antw.
PDF-Datei nach Upgrade deutlich zu groß
Gestern von ewx 1 Antw.
Vier-Augen-Prinzip auf dem Geschäftspartner
Gestern von ralf.wenzel 3 Antw.
Zugriff mittels VBA auf Remotebaustein
Gestern von Romaniac 1 Antw.

  Ähnliche Beiträge beta
doppelte Einträge
19.06.2003, 17:09 von Wolle 7 Antw.
Doppelte (bzw. mehrfach) Einträge einer Liste
13.01.2006, 13:47 von zzcpak 5 Antw.
Doppelte einträge in der Suchhilfe nicht anzeigen
22.07.2008, 05:45 von airwaver 1 Antw.
Debugging - Zeilen überspringen
25.01.2005, 12:35 von flashback 15 Antw.
Selectionsbildschirm nach 5 Sekunden überspringen
27.02.2007, 17:33 von edwin 10 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

Feedback ...?

Was können wir verbessern? Hinterlasse deine Kontaktdaten, wenn du eine direkte Antwort möchtest.

... Absenden!