Abfrage auf doppeltes Material

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
17 Beiträge • Vorherige Seite 2 von 2 (current)
17 Beiträge Vorherige Seite 2 von 2 (current)

Re: Abfrage auf doppeltes Material

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
[quote="JHM"]
Wieso das denn so umständlich ;-)
[quote]

das stimmt, Deine Lösung ist einfacher. Ich fummele einfach zu gern mit internen Tabellen rum, da übersieht man manchmal die einfachen Lösungen :)
Zuletzt geändert von Alexander D. am 08.05.2012 13:44, insgesamt 1-mal geändert.
schöne Grüße
Alexander

ECC 6.0 EHP 7

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


Re: Abfrage auf doppeltes Material

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
commolus, du kommst bei deinem Programm (dank meiner umständlichen Lösung) ein wenig durcheinander. Nachdem du GT_LQUA und GT_MAT gefüllt hast brauchst du kein AT NEW...AT END Konstrukt mehr. Alles was du hier machen müsstest wäre

Code: Alles auswählen.

...
*--------------------------------------------------------------------*
"nur die Materialnummern behalten welche mehr als nur 1 Mal vorkommen
*--------------------------------------------------------------------*
DELETE gt_mat WHERE count = 1.

"ich loope über alle Materialnummern welche mehr als ein Mal auf einem Lagerplatz eingelagert worden sind
LOOP AT gt_mat INTO wa_mat.

   "für jedes dieser Einträge gebe ich die Quants aus der Bestandstabelle aus
   LOOP AT gt_lqua INTO wa_lqua WHERE matnr = wa_mat-matnr AND lgnum = wa_mat-lgnum AND lgtyp = wa_mat-lgtyp AND lgpla = wa_mat-lgpla.
     WRITE: wa_lqua-matnr, wa_lqua-lgpla, wa_lqua-lqnum.
     NEW-LINE
   ENDLOOP.

ENDLOOP.

du könntest aber auch einen Blick auf den Vorschlag von JHM machen, dieser kommt ohne eine zweite interne Tabelle aus. Ich bin mir nur nicht sicher wie es sich verhalten würde, wenn das Material auf unterschiedlichen Lagerplätzen liegt, bei denen die Namen der Lagertypen aber gleich sind.

Ach ja, sowas hier würde ich nicht anwenden:

Code: Alles auswählen.

LOOP AT gt_mat INTO wa_mat WHERE matnr = wa_mat-matnr AND lgpla NE 'DUMMY' AND lgpla NE 'U-ZONE'
            AND lgpla NE 'IN-ZONE' AND lgpla NE 'DUMMY-1' AND lgpla NE 'UML-ZONE'.
Auf deise Weise zwingst du dich jedes mal das Programm zu ändern, wenn du einen neuen Lagerplatz von der Selektion ausschliessen möchtest. Wenn du an diesen Lagerplätzen nicht interessiert bist, dann lese sie auch nicht. Am einfachsten geht das über SELECT-OPTIONS:

Code: Alles auswählen.

SELECT-OPTIONS: o_lgpla for lqua-lgpla.

"Bestände passend zur Selektion lesen
select lqua~matnr lagp~lgpla lagp~lgnum lagp~lgtyp
  lagp~anzqu lqua~lqnum
  from lagp join lqua on lagp~lgtyp = lqua~lgtyp
                      and lagp~lgpla = lqua~lgpla
  appending table gt_lqua
  where lgpla in o_lgpla and anzqu > '1'.
durch die Angabe von SELECT-OPTIONS bekommt dein Programm ein Selektionsbild auf dem du dann bestimmte Lagerplätze von der Selektion ausschliessen kannst, ohne in deinem Code Änderungen durchzuführen
schöne Grüße
Alexander

ECC 6.0 EHP 7

Vergleichbare Themen

1
Antw.
8512
Views
fetch material group,material account 3010 and Plant(WERKS)
von dragospirnut1 » 05.07.2017 12:27 • Verfasst in ABAP Objects®
7
Antw.
5451
Views
3 Bedingungen abfrage
von 1337 » 27.11.2013 13:09 • Verfasst in ABAP® für Anfänger
1
Antw.
2229
Views
Fehler in der Abfrage
von commolus » 31.05.2012 10:03 • Verfasst in Dialogprogrammierung
2
Antw.
1830
Views
Berechtigungsprüfung vor SQL-Abfrage
von km216 » 04.11.2011 15:01 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

BAPI zur ABSO?
vor einer Woche von DeathAndPain 2 / 1770
Materialstammerweiterung: Neuer Reiter
vor 3 Wochen von DeathAndPain gelöst 4 / 2512
Ermittlung der Arbeitstage (Mosid)
vor 4 Wochen von Radinator 11 / 48148
LSMW-Problem
letzen Monat von DeathAndPain gelöst 6 / 6035

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

BAPI zur ABSO?
vor einer Woche von DeathAndPain 2 / 1770
Materialstammerweiterung: Neuer Reiter
vor 3 Wochen von DeathAndPain gelöst 4 / 2512
Ermittlung der Arbeitstage (Mosid)
vor 4 Wochen von Radinator 11 / 48148
LSMW-Problem
letzen Monat von DeathAndPain gelöst 6 / 6035