Ich versuche eine Liste der Artikel zu erhalten, die auf Lager sind, mit der neuesten bestätigten Lieferzeit, die von unserem Lieferanten angegeben wird. Wenn ich versuche, die Abfrage so zu verwenden, wird jede Vorlaufzeit, die jemals für diesen Gegenstand bestätigt wurde, zurückgegeben. Wie bekomme ich es, um mir nur den letzten zu zeigen?Liste der Artikel mit dem letzten Versanddatum
SELECT
T0.DocNum AS Order,
T1.ItemCode AS Item,
T2.U_Internal_Code AS IntItem,
CAST (((T2.onhand+T2.OnOrder)-T2.IsCommited) as int) AS Stock,
T3.ShipDate
FROM
ORDR T0
INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OITM T2 ON T1.ItemCode = T2.ItemCode
INNER JOIN POR1 T3 ON T2.U_Bestelcode = T3.U_Bestelcode
WHERE T0.DocNum='1234' AND T3.ShipDate=(SELECT MAX (ShipDate) FROM POR1 WHERE T3.ShipDate = ShipDate)
ORDER BY T1.ItemCode
Bestellung dann in absteigender Reihenfolge und wählt nur die ersten (Die Art und Weise kann, abhängig von Datenbank-Software ändern) – litelite
'T3.ShipDate = (SELECT MAX (ShipDate) FROM POR1 WHERE T3.ShipDate = ShipDate) 'macht keinen Sinn für mich. Sollte es nicht irgendwie lesen '.. VON POR1 t4 WHERE T4.U_Bestelcode = t3.U_Bestelcode ' – Serg