Gelöst Ansicht der einzelnen Lagerbestände

r-laden

Gut bekanntes Mitglied
22. Oktober 2009
140
0
Hallo,
ich habe heute gesehen das sich die Wawi Ansicht individualisieren lässt, was mir schon lange fehlt ist eine Übersicht der verschiedenen Lagerbestände zu einem Produkt.
Ist es möglich und wenn ja mit welchem Befehl mir den gesamten Lagerbestand und wie dieser sich auf die einzelnen Lager verteilt anzeigen zu lassen?
So sollte es dann aussehen:

Lagerbestand (Gesamt)
Lagerbestand Lager A
Lagerbestand Lager B
Lagerbestand Lager C
Lagerbestand Lager D


Beste Grüße
Jens
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
2.171
174
Falls so gewünscht hier der Code:
Code:
SELECT    tWarenLager.cName AS Warenlager,
        tWarenLagerPlatz.cName AS Lagerplatz,
        CONVERT(money, SUM(tWarenLagerEingang.fAnzahlAktuell)) AS Bestand
FROM dbo.tWarenLagerEingang
JOIN dbo.tWarenLagerPlatz ON tWarenLagerEingang.kWarenLagerPlatz = tWarenLagerPlatz.kWarenLagerPlatz
JOIN dbo.tWarenLager ON tWarenLagerPlatz.kWarenLager = tWarenLager.kWarenLager
WHERE    tWarenLagerEingang.fAnzahlAktuell > 0.0
         AND tWarenLagerEingang.kArtikel = @Key
GROUP BY    tWarenLager.cName,
            tWarenLagerPlatz.cName
ORDER BY    tWarenLager.cName,
            tWarenLagerPlatz.cName
 

MartinK

Moderator
Mitarbeiter
5. Dezember 2013
77
11
Das lässt sich relativ einfach abbilden, wir haben dafür bereits eine View definiert.

Code:
SELECT tWarenLager.cName AS Warenlager,
    vLagerBestandProLagerAlle.fBestand AS Bestand
FROM dbo.vLagerBestandProLagerAlle
JOIN dbo.tWarenLager ON tWarenLager.kWarenLager = vLagerBestandProLagerAlle.kWarenlager
WHERE vLagerBestandProLagerAlle.kArtikel = @Key;
 

r-laden

Gut bekanntes Mitglied
22. Oktober 2009
140
0
Danke, das kommt dem was ich brauche schon mal ganz nah. Es werden aber auch Lager angezeigt die es gar nicht mehr gibt (auch nicht in der Lagerverwaltung), ich habe diese Gelb markiert.
Kann man dies so einstellen das die erst gar nicht angezeigt werden und die anderen nach der Höhe des Lagerbestands sortiert werden? Und kann auch der gesamte Lagerbestand angezeigt werden?
 

Anhänge

MartinK

Moderator
Mitarbeiter
5. Dezember 2013
77
11
Ist auch möglich, aber bitte beobachten wie sich hier die Performance in der Gesamten JTL-Wawi verhält. Sortierungen sind immer performancekritisch im SQL Server. Bitte auch beachten, dass bei Stücklisten die Summe der einzelnen Bestände nicht den Gesamtbestand ergeben müssen. Wenn man bspw. eine Stückliste mit einem Artikel 2x als Komponente und in 2 Lagern jeweils 3 der Komponente auf Lager hat, hat man pro Lager 1x die Stückliste als Bestand aber insgesamt könnte man die Stückliste 3x bedienen mit den Komponenten.

Code:
SELECT AlleBestaende.Warenlager,
    AlleBestaende.Bestand
FROM (
    SELECT tWarenLager.cName AS Warenlager,
       vLagerBestandProLagerAlle.fBestand AS Bestand
    FROM dbo.vLagerBestandProLagerAlle
    JOIN dbo.tWarenLager ON tWarenLager.kWarenLager = vLagerBestandProLagerAlle.kWarenlager
    WHERE vLagerBestandProLagerAlle.kArtikel = @Key
       AND tWarenLager.nAktiv = 1
    UNION
    SELECT 'Alle Lager' AS Warenlager,
       tlagerbestand.fLagerbestand AS Bestand
    FROM dbo.tlagerbestand
    WHERE tlagerbestand.kArtikel = @Key
) AS AlleBestaende
ORDER BY Bestand DESC
 
  • Gefällt mir
Reaktionen: r-laden

r-laden

Gut bekanntes Mitglied
22. Oktober 2009
140
0
Super, genau so habe ich es mir vorgestellt - vielen Dank!
Performance behalte ich im Auge, sah jetzt bei den ersten Tests aber gut aus.
 

FuS e-fulfillment

Aktives Mitglied
9. November 2017
3
0
Falls so gewünscht hier der Code:
Code:
SELECT    tWarenLager.cName AS Warenlager,
        tWarenLagerPlatz.cName AS Lagerplatz,
        CONVERT(money, SUM(tWarenLagerEingang.fAnzahlAktuell)) AS Bestand
FROM dbo.tWarenLagerEingang
JOIN dbo.tWarenLagerPlatz ON tWarenLagerEingang.kWarenLagerPlatz = tWarenLagerPlatz.kWarenLagerPlatz
JOIN dbo.tWarenLager ON tWarenLagerPlatz.kWarenLager = tWarenLager.kWarenLager
WHERE    tWarenLagerEingang.fAnzahlAktuell > 0.0
         AND tWarenLagerEingang.kArtikel = @Key
GROUP BY    tWarenLager.cName,
            tWarenLagerPlatz.cName
ORDER BY    tWarenLager.cName,
            tWarenLagerPlatz.cName
Vielen Dank! Wie würde hier der Code aussehen, wenn zusätzlich noch die Spalten MHD und Charge je Lagerplatz mit Bestandsmenge benötigt werden? Besten Dank