Hallo nochmal,
hab noch ein Problem mit einer SQL-Abfrage :/
Ich probiere ein bisschen mit meinem Warenwirtschaftsprogramm herum , und möchte folgendes machen:
Ich habe folgende Tabellen (für mein Problem wichtige Tabellen ):
Produkte -> Alle Produkte mit Infos, auch Bestands-Infos
Preise -> Zu Produkten gehörige Preise, aber mehrere Preise für ein Produkt (Muss so sein)
Aufträge -> Einzelne Aufträge eines grossen Auftrags, der in Rechnungen gelistet ist, Also "Auftragsprodukte"
Rechnungen -> Große Aufträge
Rechnungen enthält also den eigentlichen Auftrag eines Kunden und in Aufträge sind dann die mit der ID von dem eigentlichen Auftrag verbundenen Teilaufträge/Auftragsprodukte enthalten.
Ich möchte nun überprüfen ob ein Auftrag lieferbereit ist, d.h. ob alle Einzelnen Aufträge verfügbar sind.
In der Tabelle Produkte sind ja die Bestandsinfos enthalten. Um diese zu erhalten muss ich aber von Rechnungen zunächst aucf Aufträge kommen um alle Einzelaufträge zu erhalten. Von Dort auf Preise um das dem im Auftrag gelisteten Preis zugehörige Produkt zu ermitteln. Dann habe ich Den Bestand eines Produkts eines großen Auftrags. Jetzt muss ich aber überprüfen ob der Bestand denn bis zum aktuell geprüften Auftrag reicht. Desshalb muss ich jetzt wieder für jedes dieser Produkte überprüfen wie oft es in der Tabelle Aufträge als nicht-geliefert (Eine Spalte, da ja bereits gelieferte Produkte nicht mitgezählt werden sollen) bestellt worden ist (Es gibt die Spalte Anzahl -> Also SUM(Anzahl)). Jetzt muss aber auch noch die Prioitäten-Reihenfolge von Rechnungen eingehalten werden, die aber natürlich auch für die einzelenen Auftragsprodukte gillt.
Ich blicke da nicht mehr durch, wie ich das in SQL schreiben soll ..... Mir brummt der Schädel :/ Hoffentlich kann mir hir jemand helfen... Ich hoffe ich habs einigermaßen vertändlich geschrieben.. Wenn nicht, fragt nach!!
Vielen Dank schon im Vorraus!!
cpu32
hab noch ein Problem mit einer SQL-Abfrage :/
Ich probiere ein bisschen mit meinem Warenwirtschaftsprogramm herum , und möchte folgendes machen:
Ich habe folgende Tabellen (für mein Problem wichtige Tabellen ):
Produkte -> Alle Produkte mit Infos, auch Bestands-Infos
Preise -> Zu Produkten gehörige Preise, aber mehrere Preise für ein Produkt (Muss so sein)
Aufträge -> Einzelne Aufträge eines grossen Auftrags, der in Rechnungen gelistet ist, Also "Auftragsprodukte"
Rechnungen -> Große Aufträge
Rechnungen enthält also den eigentlichen Auftrag eines Kunden und in Aufträge sind dann die mit der ID von dem eigentlichen Auftrag verbundenen Teilaufträge/Auftragsprodukte enthalten.
Ich möchte nun überprüfen ob ein Auftrag lieferbereit ist, d.h. ob alle Einzelnen Aufträge verfügbar sind.
In der Tabelle Produkte sind ja die Bestandsinfos enthalten. Um diese zu erhalten muss ich aber von Rechnungen zunächst aucf Aufträge kommen um alle Einzelaufträge zu erhalten. Von Dort auf Preise um das dem im Auftrag gelisteten Preis zugehörige Produkt zu ermitteln. Dann habe ich Den Bestand eines Produkts eines großen Auftrags. Jetzt muss ich aber überprüfen ob der Bestand denn bis zum aktuell geprüften Auftrag reicht. Desshalb muss ich jetzt wieder für jedes dieser Produkte überprüfen wie oft es in der Tabelle Aufträge als nicht-geliefert (Eine Spalte, da ja bereits gelieferte Produkte nicht mitgezählt werden sollen) bestellt worden ist (Es gibt die Spalte Anzahl -> Also SUM(Anzahl)). Jetzt muss aber auch noch die Prioitäten-Reihenfolge von Rechnungen eingehalten werden, die aber natürlich auch für die einzelenen Auftragsprodukte gillt.
Ich blicke da nicht mehr durch, wie ich das in SQL schreiben soll ..... Mir brummt der Schädel :/ Hoffentlich kann mir hir jemand helfen... Ich hoffe ich habs einigermaßen vertändlich geschrieben.. Wenn nicht, fragt nach!!
Vielen Dank schon im Vorraus!!
cpu32
Zuletzt bearbeitet: