SQL Abfrage-Frage

Wirbelrohr

Neuer Benutzer
Beiträge
4
Hallöle :)

Hab mal wieder was. Haben die Aufgabe bekommen, für einen Kunden alle verwendeten Rezepturen für die jeweiligen Artikel rauszusuchen. Bin natürlich nicht wahnsinnig und suche alles manuell raus. Habe schon ein paar sinnvolle Datenabfragen gemacht, die nur noch kleine nacharbeit benötigen.
Aus meinem eigenen Antrieb wollte ich mal bei den Profis fragen, obs für mein Problem eine SQL-Technische Lösung gibt.

Select
WCADM.MATERIAL.STLAPLNR,
WCADM.ARTIKEL.MATCHCODE,
WCADM.ARTIKEL.TEXT,
WCADM.MATERIAL.ARTNR,
WCADM.MATERIAL.BEZEICHNUNG,
WCADM.MATERIAL.REZEPTURNR,
WCADM.ARTIKEL.ZEICHNR,
WCADM.ARTKUND.KDNR,
WCADM.KUNDE.MATCHCODE As MATCHCODE1
From
WCADM.MATERIAL Inner Join
WCADM.ARTIKEL On WCADM.MATERIAL.STLAPLNR = WCADM.ARTIKEL.ARTNR Inner Join
WCADM.ARTKUND On WCADM.ARTIKEL.ARTNR = WCADM.ARTKUND.ARTNR Inner Join
WCADM.KUNDE On WCADM.ARTKUND.KDNR = WCADM.KUNDE.KDNR
Where
(WCADM.MATERIAL.ARTNR Like 'MM%' And
WCADM.ARTKUND.KDNR Between '20002' And '20004') Or
(WCADM.ARTKUND.KDNR = '20092') Or
(WCADM.ARTKUND.KDNR = '20118')
Order By
WCADM.MATERIAL.STLAPLNR,
WCADM.MATERIAL.REZEPTURNR,
WCADM.ARTKUND.KDNR


Also im Prinzip ist mein Problem folgendes:
Ich hatte eine Liste mit Artikelnummern und einzelnen Komponenten (Mit Rezepturnummer) erstellt.
Diese war schon recht brauchbar und man musste nur noch die nicht relevanten Kunden via Hand löschen. Jetzt hat mich der Ehrgeiz gepackt und ich hab relevanten Kunden (Kundennummer) rausgefiltert. So auch das hat funktioniert. Leider hat unser Kunde, der die Liste will mehrere Werke (mit jeweiligen Kundennummern). Die Liste zeigt jetzt Quasi für jede Kundennummer die ganzen Rezepturen an. Das brauch ich allerdings hier jetzt nicht mehr und soll Quasi auf "1" reduziert werden, so dass zu jedem Artikel nur noch alle Rezepturen 1x angezeigt werden. Gibts da ne möglichkeit. Erst hab ich ja gewollt gefiltert und will das bei der Ausgabe nicht mehr.
Hoffe man versteht mein Problem :) Kann dann am Montag noch einen Screenshot zur veranschaulichung anhängen.

Mit freundlichen Grüssen

Stefan
 
Werbung:
Werbung:
OK. Also ich erläutere jetzt mal den jetzigen Stand der Liste und was ich gerne hätte.

WCADM.MATERIAL.STLAPLNR ist die Artikelnummer bzw. Arbeitsplannummer. Jede Artikelnummer taucht 1x pro Komponente auf bzw. mehrmals, falls mehrere Rezepturen vorhanden sind. (Bei mir leider multipliziert x Kunden. Der Konzern hat 3 Werke, die bei uns bestellen. Teilweise sogar die selben Artikel. Mein wunsch wäre insgesamt 1 Zeile pro Komponente x Rezepturen.)

WCADM.ARTIKEL.MATCHCODE ist Artikelname. Unwichtig für das Problem.

WCADM.ARTIKEL.TEXT ist Artikeltext. Unwichtig für das Problem.

WCADM.MATERIAL.ARTNR ist die Artikelnummer der einzelnen Komponente für eine Rezeptur.

WCADM.MATERIAL.BEZEICHNUNG ist die Materialbezeichnung und somit unwichtig.

WCADM.MATERIAL.REZEPTURNR ist die Rezepturnummer. In meinem Bespiel gibts es nur immer eine. Es sind aber Artikel mit mehreren Rezepturen vorhanden.

WCADM.ARTIKEL.ZEICHNR ist die Kundenartikelnummer.

WCADM.ARTKUND.KDNR ist die Kundennummer. Habe die benötigten bereits gefiltert. Da aber eine Zeile für jede Komponente pro Artikel ausreichen würde wäre eine zusammengefasste Ausgabe wünschenswert. Bei FT0001 sind zum Beispiel 6 Zeilen vorhanden 2 Komponenten x 3 Kunden. --> 2 Zeilen wären mein Sollzustand. (Also aus den erst gefilterten Kundennummern eine machen.)

In den angehängten Dateien sollte man genau sehen was ich gerne möchte. Im "Sollzustand" können Kundennummern gern auftauchen muss aber nicht.

Vielen Danke für Eure Bemühungen

Stefan :)
 

Anhänge

  • Materialliste.jpg
    Materialliste.jpg
    481,2 KB · Aufrufe: 0
  • Materialliste-IST.pdf
    13,2 KB · Aufrufe: 3
  • Materialliste-SOLL.pdf
    13 KB · Aufrufe: 3
Zurück
Oben