Neu Eigene Übersicht in Aufträgen - Anzeige der verfügbaren Lagerstände in unterschiedlichen Lagern

  • Hinweis: Am 25.02.2025 zwischen 21:30 u. 22:30 Uhr - Einschränkungen beim Login und Erreichen folgender Dienste: FFN, Kundencenter, Admin, JTL-Shop, JTL-Wawi, Lizenzserver, ISI Gateway, Vouchers, Kassensysteme, Plan&Produce, Versand. Grund dafür ist ein Major Upgrade des OAuth-Dienstes. Vielen Dank für euer Verständnis!

C.lagler

Aktives Mitglied
26. November 2021
6
1
Wir haben den Bedarf, dass wir einen verfügbaren Lagerstand in unterschiedlichen Lagern im Verkauf benötigen. Der Verfügbarkeitsstand in den Artikelstammdaten bezieht sich ja leider nur auf alle Lager.
Daher haben wir eine eigene Übersicht entwickelt die allerdings einen kleinen Fehler hat: Sobald ein Artikel mehrfach auf einem Auftrag aufscheint sind die angezeigten Mengen nicht mehr korrekt. Die SQL Abfrage sieht wie folgt aus:

SELECT tArtikel.cArtNr as Artikelnummer,

ROUND(CONVERT(FLOAT, SUM(CASE WHEN tlagerbestandProLagerLagerartikel.kWarenlager = 1 THEN tlagerbestandProLagerLagerartikel.fBestand END)
-
Coalesce(

(
SELECT
SUM(inner_pos.nAnzahl) AS inAuftrag
FROM tBestellpos inner_pos
INNER JOIN tBestellung inner_be ON inner_pos.tBestellung_kBestellung = inner_be.kBestellung
LEFT OUTER JOIN tArtikel inner_art ON inner_pos.tArtikel_kArtikel = inner_art.kArtikel

WHERE
inner_art.kArtikel = tArtikel.kArtikel
AND inner_be.nStorno = 0 AND
inner_be.nKomplettAusgeliefert = 0 AND
inner_be.cType = 'B' AND
inner_be.kFirma = 1
)
,0)
+
Coalesce(

(
SELECT
(SUM(inner_lspos2.fAnzahl)) AS inAuftrag
FROM tBestellpos inner_pos2
INNER JOIN tBestellung inner_be2 ON inner_pos2.tBestellung_kBestellung = inner_be2.kBestellung
INNER JOIN tArtikel inner_art2 ON inner_pos2.tArtikel_kArtikel = inner_art2.kArtikel
LEFT OUTER JOIN tLieferscheinPos inner_lspos2 ON inner_pos2.kBestellPos = inner_lspos2.kBestellPos
WHERE
inner_art2.kArtikel = tArtikel.kArtikel
AND inner_be2.nStorno = 0 AND
inner_be2.nKomplettAusgeliefert = 0 AND
inner_be2.cType = 'B' AND
inner_be2.kFirma = 1
)
,0)

),2) AS Verfügbar_Wernberg,


ROUND(CONVERT(FLOAT, SUM(CASE WHEN tlagerbestandProLagerLagerartikel.kWarenlager = 2 THEN tlagerbestandProLagerLagerartikel.fBestand END)

-
Coalesce(

(
SELECT
(SUM(inner_pos.nAnzahl)) AS inAuftrag
FROM tBestellpos inner_pos
INNER JOIN tBestellung inner_be ON inner_pos.tBestellung_kBestellung = inner_be.kBestellung
INNER JOIN tArtikel inner_art ON inner_pos.tArtikel_kArtikel = inner_art.kArtikel
LEFT OUTER JOIN tLieferscheinPos inner_lspos ON inner_pos.kBestellPos = inner_lspos.kBestellPos
WHERE
inner_art.kArtikel = tArtikel.kArtikel
AND inner_be.nStorno = 0 AND
inner_be.nKomplettAusgeliefert = 0 AND
inner_be.cType = 'B' AND
inner_be.kFirma = 2
)
,0)
+
Coalesce(

(
SELECT
(SUM(inner_lspos2.fAnzahl)) AS inAuftrag
FROM tBestellpos inner_pos2
INNER JOIN tBestellung inner_be2 ON inner_pos2.tBestellung_kBestellung = inner_be2.kBestellung
INNER JOIN tArtikel inner_art2 ON inner_pos2.tArtikel_kArtikel = inner_art2.kArtikel
LEFT OUTER JOIN tLieferscheinPos inner_lspos2 ON inner_pos2.kBestellPos = inner_lspos2.kBestellPos
WHERE
inner_art2.kArtikel = tArtikel.kArtikel
AND inner_be2.nStorno = 0 AND
inner_be2.nKomplettAusgeliefert = 0 AND
inner_be2.cType = 'B' AND
inner_be2.kFirma = 2
)
,0)


),2) AS Verfügbar_Klagenfurt


FROM tBestellung

INNER JOIN tBestellpos ON tBestellung.kBestellung = tBestellpos.tBestellung_kBestellung
INNER JOIN tArtikel ON tBestellpos.tArtikel_kArtikel = tArtikel.kArtikel
INNER JOIN tlagerbestandProLagerLagerartikel ON tArtikel.kArtikel = tlagerbestandProLagerLagerartikel.kArtikel

WHERE tBestellung.kBestellung = @Key

GROUP BY tArtikel.kArtikel,tArtikel.cArtNr

Eine ähnliche Abfrage in der Artikelübersicht funktioniert.
Wenn diesen Code jemand braucht, bitte gerne melden.

Ich hoffe es kann mir jemand bei diesem Code weiterhelfen.

Besten Dank vorab.
 

Patrizia

Sehr aktives Mitglied
19. September 2010
491
80
Mir zu unterstellen, dass ich rudimentäre Ahnung von SQL habe, wäre eine Übertreibung.
Aber ich habe das gleiche Problem und mein Freund ChatGPT war hilfsbereit.
Ich bin ehrlich gesagt platt vom Ergebnis her. Er pröpfelt manchmal herum und macht Fehler und korrigiert sie dann falsch, aber wenn man ein wenig logisch mitdenken kann und immer wieder dahin zurückgeht, wo es funktioniert hat, dann kommt ein Ergebnis heraus, das genau das tut, was ich wollte und was ich in 100 Jahren nicht zustande gebracht hätte.
Mein einziger echter Beitrag war die Filterung auf Artikel mit Bestand, Artikelsprache nur deutsch (sonst kommt jede Zeile für jede Sprache) und die Plattform ( Wawi) ansonsten kommt jede Zeile auch für jede Plattform.

Zwei Schönheitsfehler: Kindartikel müssen aus dem oberen Hauptfenster heraus angewählt werden, nicht aus dem unteren Fenster und man kann immer nur einen Artikel auswählen.

Versuch mal, ob es was hilft:

SELECT
SKU,
Artikelname,
Lager,
Bestand,
Lagerwert
FROM
(
SELECT
'Summe' AS SKU,
NULL AS Artikelname,
NULL AS Lager,
FORMAT(SUM(fBestand), '#,0') AS Bestand,
FORMAT(SUM(fBestand * TA.fEkNetto), '#,0') AS Lagerwert,
0 AS OrderFlag
FROM
tlagerbestandProLagerLagerartikel LPL
LEFT JOIN
tArtikel TA ON LPL.kArtikel = TA.kArtikel
LEFT JOIN
tWarenlager TL ON LPL.kWarenlager = TL.kWarenLager
LEFT JOIN
tArtikelBeschreibung TAB ON TA.kArtikel = TAB.kArtikel
WHERE
TA.kArtikel = @keys
AND fBestand > 0
AND kSprache = 1
AND kPlattform = 1

UNION ALL

SELECT
cArtNr AS SKU,
TAB.cName AS Artikelname,
TL.cName AS Lager,
FORMAT(fBestand, '#,0') AS Bestand,
FORMAT(fBestand * TA.fEkNetto, '#,0') AS Lagerwert,
1 AS OrderFlag
FROM
tlagerbestandProLagerLagerartikel LPL
LEFT JOIN
tArtikel TA ON LPL.kArtikel = TA.kArtikel
LEFT JOIN
tWarenlager TL ON LPL.kWarenlager = TL.kWarenLager
LEFT JOIN
tArtikelBeschreibung TAB ON TA.kArtikel = TAB.kArtikel
WHERE
TA.kArtikel = @keys
AND fBestand > 0
AND kSprache = 1
AND kPlattform = 1
) AS Result
ORDER BY
OrderFlag DESC,
CASE WHEN SKU IS NULL THEN 1 ELSE 0 END,
CAST(Bestand AS INT) DESC;
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Eigene Übersicht im 360° Widgetfenster - Eigene Felder im Kundenstamm Eigene Übersichten in der JTL-Wawi 2
Beantwortet Eigene Übersicht - Artikel Beschreibung im F2 Panel einbetten Eigene Übersichten in der JTL-Wawi 2
Neu Eigene Übersicht - Artikelbestand alle Läger Eigene Übersichten in der JTL-Wawi 1
Eigene Felder im Formular abfragen? JTL-Wawi 1.9 4
Neu Template für eigene Seite Templates für JTL-Shop 9
Neu Eigene Seite taucht in Linkgruppe nicht auf Technische Fragen zu Plugins und Templates 2
Übernahme eigene Dashboard Konfig und Statistiken auf anderen Client JTL-Wawi 1.9 0
Neu Übernahme eigene Dashboard Konfig und Statistiken auf anderen Client Eigene Übersichten in der JTL-Wawi 0
Neu Eigene Zahlart im Shop anlegen Umstieg auf JTL-Shop 2
Neu 🛒𝐍𝐞𝐮𝐞𝐬 𝐏𝐥𝐮𝐠-𝐈𝐧: Eigene Lösung für Rechnungskauf mit Bonitäts- & Betrugsprüfung direkt im Check-out - JTL5? Plugins für JTL-Shop 4
Neu Vorlagen in Version 1.9.6.5 und Eigene Felder? Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
email Vorlage eigene Felder Variable English JTL-Wawi 1.9 6
Neu Möglichkeit Variablen in Html in Eigene > Inhalte > Seiten auszugeben Allgemeine Fragen zu JTL-Shop 4
Eigene UST ID wird nicht eingetragen JTL-Wawi 1.9 9
JT WAWI 1.9.6.1 Eigene Felder werden nicht mehr übertragen, bzw. gelöscht JTL-Wawi 1.9 11
Neu Eigene Kategorien für ebay Angebote oder JTL Wawi Kategorie Baum nutzen Einrichtung und Installation von JTL-eazyAuction 1
[NOVA TEMPLATE] Linke Seitenleiste in Kategorie Übersicht bzw. global ausblenden. Einrichtung JTL-Shop5 2
Neu Suche Anbieter für Erstellung einer eigenen Übersicht , da JTL Projektbörse fehlerhaft Eigene Übersichten in der JTL-Wawi 5
Neu Hilfe bei korrekter Variable für Umsatzsteuer-Summe und dotLiquid-Übersicht Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Auslieferung von Artikeln in teillieferbaren Aufträgen & von unterschiedlichen Artikeln im Wareneingang Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Bestand in Aufträgen, obwohl es keine Aufträge gibt JTL-Wawi 1.9 3
Gewinn auf Artikelebene in Aufträgen auswerten JTL-Wawi 1.9 2
Neu Auftragsnummer auf WMS Pickliste mit mehreren Aufträgen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1

Ähnliche Themen